13 инструментов CLI, которыми должен овладеть каждый разработчик и системный администратор

В мире разработки программного обеспечения интерфейс командной строки (CLI) остается мощным и необходимым инструментом для разработчиков.

Инструменты CLI продолжают развиваться, предлагая все больше возможностей и улучшая производительность, чтобы помочь разработчикам работать быстрее и умнее.

В этой статье мы рассмотрим 10 лучших инструментов CLI для разработчиков в 2025 году, уделяя особое внимание таким инструментам, как tmux, htop, fzf, bat, exa и ripgrep, которые призваны сделать ваш рабочий процесс более эффективным.

1. tmux – терминальный мультиплексор

tmux – это необходимый инструмент для разработчиков, работающих с несколькими терминальными сессиями, поскольку он позволяет разделить окно терминала на несколько панелей, управлять несколькими сессиями, отсоединять и присоединять сессии без потери работы. Это особенно полезно для удаленной разработки или при работе на серверах без графического интерфейса.

Ключевые особенности:

  • Разделение терминала на несколько панелей (горизонтально или вертикально).
  • Отсоединяйте и присоединяйте сеансы, чтобы работа сохранялась даже при разрыве соединения.
  • Настраиваемые привязки клавиш для быстрой навигации.

Чтобы установить tmux в Linux, выполните команду:

sudo apt install tmux         [On Debian, Ubuntu and Mint]
sudo dnf install tmux         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a sys-apps/tmux  [On Gentoo Linux]
sudo apk add tmux             [On Alpine Linux]
sudo pacman -S tmux           [On Arch Linux]
sudo zypper install tmux      [On OpenSUSE]    
sudo pkg install tmux         [On FreeBSD]

После установки tmux вы можете начать новую сессию с помощью tmux new -s session_name, разделить панели с помощью Ctrl + b + % (вертикально) или Ctrl + b + « (горизонтально) и отсоединиться с помощью Ctrl + b + d.

2. htop – Интерактивный просмотрщик процессов

В то время как традиционная команда top обеспечивает базовый мониторинг процессов, htop выводит его на новый уровень благодаря интерактивному и визуально привлекательному интерфейсу, который помогает вам эффективно контролировать и управлять системными ресурсами, обеспечивая бесперебойную работу вашей машины.

Ключевые особенности:

  • Цветной дисплей для удобства чтения.
  • Прокручиваемый список процессов и древовидный вид.
  • Убийство или переименование процессов непосредственно из интерфейса.

Чтобы установить htop в Linux, выполните команду:

sudo apt install htop         [On Debian, Ubuntu and Mint]
sudo dnf install htop         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a sys-apps/htop  [On Gentoo Linux]
sudo apk add htop             [On Alpine Linux]
sudo pacman -S htop           [On Arch Linux]
sudo zypper install htop      [On OpenSUSE]    
sudo pkg install htop         [On FreeBSD]

После установки просто введите htop в терминале, чтобы запустить инструмент и использовать клавиши со стрелками для навигации, а также нажмите F9, чтобы убить процесс.

3. fzf – Fuzzy Finder

fzf – это быстрый и интуитивно понятный поисковик, который поможет вам с легкостью искать файлы, команды и каталоги. Он легко интегрируется с другими инструментами CLI и поддерживает фильтрацию в реальном времени.

Основные возможности:

  • Нечеткое сопоставление для быстрого поиска.
  • Работает с историей команд, путями к файлам и т. д.
  • Легко интегрируется с другими инструментами, такими как vim, bash и zsh.
  • Высокая настраиваемость и возможность написания сценариев.

Чтобы установить fzf в Linux, выполните:

sudo apt install fzf         [On Debian, Ubuntu and Mint]
sudo dnf install fzf         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a sys-apps/fzf  [On Gentoo Linux]
sudo apk add fzf             [On Alpine Linux]
sudo pacman -S fzf           [On Arch Linux]
sudo zypper install fzf      [On OpenSUSE]    
sudo pkg install fzf         [On FreeBSD]

После установки запустите fzf в терминале, чтобы начать поиск. Комбинируйте его с командами вроде ls | fzf для фильтрации списков файлов.

4. bat – Усовершенствованная команда «Кошка

bat – это современная замена традиционной команды cat, которая добавляет подсветку синтаксиса, номера строк и интеграцию с Git, чтобы облегчить чтение кода и текстовых файлов.

Основные возможности:

  • Подсветка синтаксиса для более чем 200 языков программирования.
  • Нумерация строк и поддержка Git diff.
  • Поддержка пагинации для больших файлов.

Чтобы установить bat в Linux, выполните следующие действия:

sudo apt install bat         [On Debian, Ubuntu and Mint]
sudo dnf install bat         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a sys-apps/bat  [On Gentoo Linux]
sudo apk add bat             [On Alpine Linux]
sudo pacman -S bat           [On Arch Linux]
sudo zypper install bat      [On OpenSUSE]    
sudo pkg install bat         [On FreeBSD]

После установки просто замените cat на bat. Например, bat filename.txt отображает файл с подсветкой синтаксиса. Если bat недоступен, попробуйте использовать batcat.

5. eza – современная альтернатива ls

eza – это современная альтернатива команде ls, предлагающая больше возможностей и лучшую производительность. Она отображает информацию о файлах в более удобном для чтения формате, поддерживает иконки и интеграцию с Git.

Основные возможности:

  • Цветовая кодировка вывода для лучшей читаемости.
  • Отображение метаданных файла, таких как разрешения, размер и время модификации.
  • Древовидный вид для иерархических структур каталогов.

Чтобы установить eza в Linux, выполните команду:

sudo apt install eza         [On Debian, Ubuntu and Mint]
sudo dnf install eza         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a sys-apps/eza  [On Gentoo Linux]
sudo apk add eza             [On Alpine Linux]
sudo pacman -S eza           [On Arch Linux]
sudo zypper install eza      [On OpenSUSE]    
sudo pkg install eza         [On FreeBSD]

После установки используйте eza вместо ls. Например, eza -l предоставляет подробный список, а eza --tree показывает дерево каталогов.

6. ripgrep (rg) – быстрый поиск файлов

ripgrep (rg) – это молниеносный инструмент поиска, сочетающий в себе мощь команды grep с современными возможностями, такими как игнорирование файлов, указанных в .gitignore.

Ключевые особенности:

  • Рекурсивный поиск в каталогах.
  • Игнорирует файлы и каталоги, указанные в .gitignore.
  • Поддерживает regex и Unicode.

Чтобы установить ripgrep в Linux, выполните:

sudo apt install ripgrep         [On Debian, Ubuntu and Mint]
sudo dnf install ripgrep         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a sys-apps/ripgrep  [On Gentoo Linux]
sudo apk add ripgrep             [On Alpine Linux]
sudo pacman -S ripgrep           [On Arch Linux]
sudo zypper install ripgrep      [On OpenSUSE]    
sudo pkg install ripgrep         [On FreeBSD]

После установки выполните rg "search_term" для поиска вхождений термина в каталоге проекта.

7. Zsh – Z Shell

Zsh – это очень настраиваемая оболочка, которая предлагает множество улучшений по сравнению с Bash, в том числе улучшенное автозаполнение, тематическое оформление и поддержку плагинов.

Основные возможности:

  • Расширенное завершение вкладок.
  • Экосистема плагинов с помощью таких фреймворков, как Oh My Zsh.
  • Темы для настройки подсказок.

Чтобы установить Zsh в Linux, выполните команду:

sudo apt install zsh         [On Debian, Ubuntu and Mint]
sudo dnf install zsh         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a sys-apps/zsh  [On Gentoo Linux]
sudo apk add zsh             [On Alpine Linux]
sudo pacman -S zsh           [On Arch Linux]
sudo zypper install zsh      [On OpenSUSE]    
sudo pkg install zsh         [On FreeBSD]

После установки смените оболочку по умолчанию на Zsh с помощью chsh -s $(which zsh).

8. Git – система контроля версий

git – самая популярная и широко используемая система контроля версий, позволяющая разработчикам отслеживать изменения, сотрудничать и управлять репозиториями кода. Она необходима для современной разработки программного обеспечения и совместной работы.

Ключевые особенности:

  • Разветвление и слияние для параллельной разработки.
  • Распределенный контроль версий.
  • Интеграция с такими платформами, как GitHub и GitLab.

Чтобы установить git в Linux, выполните:

sudo apt install git         [On Debian, Ubuntu and Mint]
sudo dnf install git         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a sys-apps/git  [On Gentoo Linux]
sudo apk add git             [On Alpine Linux]
sudo pacman -S git           [On Arch Linux]
sudo zypper install git      [On OpenSUSE]    
sudo pkg install git         [On FreeBSD]

После установки вы можете инициализировать репозиторий с помощью git init, добавлять файлы с помощью git add ., фиксировать изменения с помощью git commit -m "message" и отправлять в удаленный репозиторий с помощью git push.

9. cURL – инструмент для передачи данных

cURL – это инструмент командной строки для передачи данных по различным протоколам, таким как HTTP, HTTPS, FTP и др. Он широко используется для тестирования API, загрузки файлов и отладки сетевых проблем.

Основные возможности:

  • Поддержка нескольких протоколов.
  • Может отправлять HTTP-запросы с заголовками и данными.
  • Работает как с GET, так и с POST-запросами.

Чтобы установить cURL в Linux, выполните:

sudo apt install curl         [On Debian, Ubuntu and Mint]
sudo dnf install curl         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a sys-apps/curl  [On Gentoo Linux]
sudo apk add curl             [On Alpine Linux]
sudo pacman -S curl           [On Arch Linux]
sudo zypper install curl      [On OpenSUSE]    
sudo pkg install curl         [On FreeBSD]

После установки вы можете получить веб-страницу с помощью curl http://example.com или отправить POST-запрос с помощью:

curl -X POST -d "param=value" http://example.com

10. tldr – Упрощенные человеческие страницы

tldr упрощает часто перегруженные страницы man, предоставляя короткие примеры использования команд, разработанные сообществом.

Ключевые особенности:

  • Простые для понимания примеры.
  • Доступен в автономном режиме после первоначальной настройки.
  • Охватывает широкий спектр команд.

Чтобы установить tldr в Linux, выполните следующие действия:

sudo apt install tldr         [On Debian, Ubuntu and Mint]
sudo dnf install tldr         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a sys-apps/tldr  [On Gentoo Linux]
sudo apk add tldr             [On Alpine Linux]
sudo pacman -S tldr           [On Arch Linux]
sudo zypper install tldr      [On OpenSUSE]    
sudo pkg install tldr         [On FreeBSD]

После установки введите tldr command_name, чтобы получить примеры быстрого использования. Например, в tldr tar объясняются общие операции с tar.

11. jq – Процессор JSON

jq – это легкий и гибкий JSON-процессор командной строки, который позволяет разбирать, фильтровать и манипулировать JSON-данными прямо из терминала.

Основные возможности:

  • Извлечение и преобразование JSON-данных.
  • Поддержка сложных запросов и преобразований.
  • Легко интегрируется в сценарии.

Чтобы установить jq в Linux, выполните:

sudo apt install jq         [On Debian, Ubuntu and Mint]
sudo dnf install jq         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a sys-apps/jq  [On Gentoo Linux]
sudo apk add jq             [On Alpine Linux]
sudo pacman -S jq           [On Arch Linux]
sudo zypper install jq      [On OpenSUSE]    
sudo pkg install jq         [On FreeBSD]

После установки вы можете запустить его для обработки JSON-данных в Linux.

12. ncdu – Анализатор использования диска

ncdu – это анализатор использования диска, который поможет вам выявить большие файлы и каталоги, занимающие место на диске. Он предоставляет интерактивный интерфейс, позволяющий легко перемещаться по файловой системе и определять области, требующие очистки.

Основные возможности:

  • Интерактивный интерфейс для навигации по каталогам.
  • Сортировка файлов по размеру для быстрой идентификации.
  • Легкий и быстрый по сравнению с графическими альтернативами, такими как Baobab.

Чтобы установить ncdu в Linux, выполните команду:

sudo apt install ncdu         [On Debian, Ubuntu and Mint]
sudo dnf install ncdu         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a sys-apps/ncdu  [On Gentoo Linux]
sudo apk add ncdu             [On Alpine Linux]
sudo pacman -S ncdu           [On Arch Linux]
sudo zypper install ncdu      [On OpenSUSE]    
sudo pkg install ncdu         [On FreeBSD]

После установки запустите ncdu /path/to/directory для анализа использования диска. Перемещайтесь с помощью клавиш со стрелками и удаляйте файлы прямо из интерфейса, нажав d. Вы также можете обновить вид с помощью r или выйти из программы с помощью q.

13. asciinema – Рекордер терминальных сессий

asciinema позволяет разработчикам записывать свои терминальные сессии и делиться ими в виде воспроизводимых ASCII-видео, что особенно полезно для создания учебников, документирования рабочих процессов или совместной работы с коллегами.

Ключевые особенности:

  • Запись ввода и вывода без перехвата конфиденциальных данных.
  • Ссылки для совместной работы и документации.
  • Воспроизведение можно приостанавливать, перематывать и копировать.

Чтобы установить asciinema в Linux, выполните команду:

sudo apt install asciinema         [On Debian, Ubuntu and Mint]
sudo dnf install asciinema         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a sys-apps/asciinema  [On Gentoo Linux]
sudo apk add asciinema             [On Alpine Linux]
sudo pacman -S asciinema           [On Arch Linux]
sudo zypper install asciinema      [On OpenSUSE]    
sudo pkg install asciinema         [On FreeBSD]

После установки вы можете начать запись с помощью asciinema rec, остановить с помощью Ctrl + D и загрузить сессию для общего доступа. Вы также можете сохранить запись локально, указав имя файла: asciinema rec demo.cast. Для воспроизведения локальной записи используйте asciinema play demo.cast.

Заключение

Начиная с управления терминалами с помощью tmux и заканчивая поиском файлов с помощью ripgrep, каждый инструмент решает конкретную задачу, повышая при этом общую эффективность. Интегрировав эти инструменты в свой рабочий процесс, вы сможете оптимизировать задачи, уменьшить трение и больше сосредоточиться на работе и решении проблем.

Такие инструменты, как Zsh, Git и cURL, необходимы для современных рабочих процессов разработки, обеспечивая все – от контроля версий до тестирования API. В то же время такие утилиты, как ncdu и asciinema, предоставляют специализированную функциональность для анализа дисков и записи сессий, соответственно, обеспечивая разработчиков необходимыми инструментами для каждой задачи.

Зарубин Иван Эксперт по Linux и Windows

Парашютист со стажем. Много читаю и слушаю подкасты. Люблю посиделки у костра, песни под гитару и приближающиеся дедлайны. Люблю путешествовать.

Вдохновлен www.tecmint.com

Похожие статьи

Комментарии (0)