12 лайфхаків для термінала Linux

Термінал Linux — це текстовий інтерфейс для взаємодії з операційною системою. Він дозволяє керувати файлами, налаштовувати системи, встановлювати програми та автоматизовувати завдання. Термінал є одним із найзручніших інструментів, особливо для програмістів, системних адміністраторів і DevOps-інженерів. Адже він забезпечує швидкість і доступ до функцій, яких немає у графічному інтерфейсі.

Проте його багатофункціональність може бути складною для новачків, які ще навіть плутаються у гарячих клавішах. Тому тримай підбірку порад, яка стане для тебе мастхевом.

  1. Пошук та вибір за допомогою fzf
    fzf — це інструмент для пошуку та вибору з підтримкою нечіткого збігу. Він працює з різними текстовими даними: файлами, процесами, хостами, комітами Git тощо. Інструмент зручний для інтерактивного вибору в скриптах, наприклад, для гілок Git або налаштування параметрів хмарних сервісів. Це спрощує пошук необхідної інформації в командному рядку.
  2. Команда cd.. дозволяє перейти до батьківської директорії, а команда cd — повертає до попередньої директорії. 
  3. Безперервне виконання команди
    Щоб виконувати команду доти, поки вона не буде успішно виконана, можна використати конструкцію з перевіркою коду завершення команди:

    while ! [command]; do sleep 1; done

    Цей цикл буде повторювати команду, перевіряючи її статус, і якщо вона не виконалася успішно, наступна спроба починається через секунду.
  4. Форматування виводу в таблицю за допомогою column -t
    Коли ти виконуєш команду, таку як ls, або іншу, що виводить великі обсяги даних на екран, може знадобитися довгий скролінг для перегляду всього виводу. Щоб організувати дані у вигляді таблиці, можна скористатися командою column -t. Наприклад:

    $ cat /etc/passwd | column -t

    Це дозволяє зручно форматувати виведення і полегшити перегляд.
  5. Альтернатива heredoc для вводу даних
    Heredoc — це конструкція, що дозволяє вставляти багаторядкові тексти в командний рядок. Але її синтаксис може бути складним, і не всі оболонки підтримують цю функцію. Замість неї можна використовувати /dev/stdin, що дозволяє передавати ввід через стандартний потік і є сумісною з більшістю оболонок.

    Наприклад, замість використання heredoc для багаторядкового вводу, можна передати текст через команду і спрямувати її в /dev/stdin.

    Однак є обмеження: цей метод не працює в скриптах, оскільки потребує взаємодії з терміналом, і команди потрапляють в історію оболонки. Це може стати проблемою, якщо потрібно зберегти конфіденційність або уникнути фіксації команд.
  6. Повторюване виконання команди
    Команда !! в оболонці дозволяє повторно виконати останню введену команду. Це зручно, якщо ти забув додати деякі параметри. Заощаджує час та допомагає уникнути помилок при введенні довгих команд.

    $ systemctl stop httpd

    $ sudo !!
  7. Передача великих файлів
    Спростити передачу великих файлів можна завдяки команді zip. Але, якщо файли занадто великі, тоді варто створити багатотомний архів і, для додаткового захисту, використати ключ -e.

    $ zip -re test.zip AdbeRdr11010_en_US.exe run.sh Smart_Switch_pc_setup.exe

    adding: AdbeRdr11010_en_US.exe (deflated 0%)

    adding: run.sh (stored 0%)

    adding: Smart_Switch_pc_setup.exe (deflated 2%)
  8. Команда pushd /path/ змінює поточний каталог на /path/ і зберігає попередній каталог у спеціальному стеку. Команда popd видаляє верхній каталог зі стека й повертає тебе до попереднього каталогу.
  9. Якщо є потреба керувати кількома сесіями в терміналі одночасно або автоматизувати завдання, які важко реалізувати за допомогою звичайних скриптів, спробуй tmux. Цей інструмент дозволяє створювати однакові сесії на різних серверах, передавати дані між панелями, реагувати на вивід термінала та виконувати команди в кількох панелях одночасно., значно спрощуючи роботу в терміналі.
  10. Обрізати файл
    Щоб обрізати файл чи видалити його без відкриття, використовуй команду truncate. Для цього потрібно вказати розмір файлу за допомогою параметра -s або –size. Якщо вкажеш 0, файл буде повністю порожнім. Якщо вказати інше значення, файл зменшиться до вказаного розміру.

    truncate -s 0 filename.txt — видаляє весь вміст файлу.

    truncate -s 100 filename.txt — зменшує файл до 100 байтів.
  11. Запуск кількох команд одночасно
    Щоб запускати кілька команд одночасно, можна об’єднати їх у ланцюжок, використовуючи три різні параметри:

    ; — дозволяє виконати команди послідовно, незалежно від того, чи виконалася попередня успішно.

    || — команда виконується лише в тому випадку, якщо попередня команда не була успішною.

    && — наступна команда виконується лише в разі успіху попередньої.
  12. Швидкий пошук потрібної інформації
    Не обов’язково запам’ятовувати всі деталі команд у терміналі. Завжди можна скористатися вбудованими інструментами для отримання потрібної інформації:

    man: відкриває довідку про утиліти та програми. Наприклад, man ls покаже всі доступні опції для команди ls.

    help: надає короткий опис вбудованих команд оболонки. Наприклад, help cd покаже, як працює команда cd.

Післяслово

Ці 12 лайфхаків неодмінно полегшать тобі життя та пришвидшать роботу.
Але, якщо працювати з терміналом Linux досі важко, тоді запрошуємо тебе стати студентом нашого IT Education Center.
Курс «Linux для початківців» стане чудовою нагодою дізнатись нового та закріпити те, що ти вже знаєш.

Залишити відповідь

Дякуємо, що поділились