Консольные утилиты Linux, которые смогут облегчить вам жизнь

Немного о утилитах на консоли, которые знают немногие, однако они могут быть полезны как для начинающего джуна, так и для крепкого сеньора.

Написать о утилитах (прежде всего консольных) стоит из-за того, что я вижу, как многие люди не используют мощность консоли на все 100%. Многие ограничиваются простым созданием файлов, а также переходом между директориями, работая в консоли. Я считаю что это следствие того, что в рунете мало источников, где бы могли нормально рассказать о утилитах, как на них работать, и что они делают.
Оценивать утилиты мы будем по 5-бальной шкале. Сделано это для того, чтобы вы сразу могли понять, где на мой субъективный взгляд, одна утилита на голову выше другой. Я не призываю использовать что-то определенное, или использовать только командные утилиты. Нет, наоборот, я просто даю вам выбор. Пользоваться или нет полученными знаниями, на которые я потратил кучу времени — дело ваше.

Я сразу хочу сказать, что в этом посте присутствуют утилиты, которые понадобились непосредственно мне при разработке. Если у вас есть свои предложения как дополнить этот список, милости прошу в комментарии.


Передвижение по директориям


ViFM

shjpm3d_3nsxvrke-yohk2g7hcw.png

ViFM — vim-подобный файловый менеджер, который способен быстро переходить между директориями и выполнять какие-либо операции с файлами и директориями посредством ввода команд или хоткеев. По умолчанию представляет из себя две панели (чёрную и белую) между которыми вы можете переключаться.

Оценка: 3, ибо для того чтобы пользоваться этим ФМ, вам нужно будет выучить кучу vim-подобных команд, а также знать хоткеи vim’а


mc

n3rv8k61fmkxdwet8iat1vybbn8.png

mc (Midnight Commander) — классика в Linux’e. С помощью него вы сможете также быстро перемещаться между директориями, менять права доступа, открывать файлы с помощью встроенного редактора, а также многое другое. В программу встроен довольно понятный интерфейс, где внизу находятся хоткеи, а вверху две панели (между которыми вы переключаетесь с помощью клавиши Tab).

Оценка: 5. Это то, что нужно новичку, и подходит продвинутому пользователю. Вам не нужны никакие предварительные знания, чтобы полноценно использовать этот ФМ.


Ranger

5grrzzp4wmlajxit9dxysnhbjwk.png

Ranger — ещё один ФМ с вим-подобной раскладкой. Однако, на этот раз утилита написана на Python (что делает его медленнее), но в то же время чертовски гибкой и удобной. Вы можете открывать файлы сразу из менеджера с помощью rifle (сценарий, который ищет какая программа подойдет для открытия данного файла на вашем ПК). Также доступно редактирование, просмотр быстрых клавиш (отдельно от мануала, который вызывается командой : help), и много других плюшек.

Оценка: 4. Было бы 5, если бы не скорость работы


Быстрый поиск

Быстрый поиск не доступен на оболочке Gnome, например. (Здесь говорится о быстром поиске включая содержимое файлов. Gnome же обладает просто поиском, причем ещё и очень медленным)


fzf

xi0zcy_nc3irvaptrk8z0rkplyo.png

fzf (FuzzyFinder) — утилита для быстрого поиска среди директорий, а также текста в определенном массиве файлов. Она может быть легко заменена на find, однако является его более быстрым и удобным аналогом.

Оценка: 5. Утилита отлично выполняет свою работу.


hf

hf (happyfinder) — ещё одна утилита для быстрого поиска в директориях и файлах. Отличается тем, что доступны также некоторые хоткеи и использование команд в самой утилите реализованно чуточку удобнее, чем у конкурента

Оценка: 5


autojump

autojump — утилита для быстрого перепрыгивания через папки к определенному файлу.


Редактирование

Тут я ограничюсь только списком утилит. Ибо редактор — то, чем вы пользуетесь постоянно (а если не пользуетесь, то тем более вам не нужны лишние объяснения), поэтому тут на вкус и цвет


  • Vim
  • NeoVim
  • Nano (стандартный редактор Linux)
  • Vi (ещё один стандартный редактор Linux)
  • Emacs
  • Micro
  • Kakoune
  • Doom Emacs (просто конфигурация Emacs, однако изменяет его так, что это уже совсем не похоже на ванильный Emacs)


Сами терминалы


Alacritty (самый быстрый)

dc552e7a88c759f7dd255463b0a2d136.png
Alacritty — эмулятор терминала на Linux/Windows/MacOS, который считается самым быстрым (так пишет сам автор этого терминала)

Оценка: 4. На мой субъективный взгляд — не самый удобный и комфортный терминал.


Hyper (самый красивый)

iusf2dx5bsnydpov1cydpew2lsa.png

Hyper — терминал, который заслуживает того, чтобы вы попробовали использовать его на своей системе. Его интерфейс сделан с помощью CSS/HTML, а базируется он на фреймворке Electron (что конечно же будет делать его немножко прожорливее)

Оценка: 5. Терминал удобный и красивый. Он расширяемый и в нём есть куча фич.


Быстрая справка (или поиск чего-либо)


ddgr

yo52lwurk_0b42zq19xbrj4jf_8.png

ddgr — командная утилита, которая позволяет пользоваться DuckDuckGo прямо из консоли.

Оценка: 5. Программа быстро выполняет запрос и отдаёт результаты (естественно, ибо не нужно прогружать HTML/CSS. Всё быстренько парсится)


tldr

9nmekljhzq4d5xtyaj2_tfgz2eg.png

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

Оценка: 4. Иногда tldr выдаёт уж слишком короткую справку, а также на многие программы просто нет документации в tldr


howdoi

howdoi — парсит ответы с разных сайтов на вопросы о программировании.

Оценка: 3. Часто находит ответы на совсем не те вопросы. Также крайне неудобно, что ответ выводится только один


navi

navi — консольная утилита, подобная howdoi, однако отвечающая сугубо на вопросы о командах консоли


how2

how2 — утилита подобная howdoi, однако дающая выбор на какой вопрос посмотреть ответ. (Парсит всё с StackOverflow)

Оценка: 5. Лучшая утилита для быстрого поиска решений


Веб-разработка

Surge — утилита для быстрого пуша сайтов на бесплатный (или платный, в зависимости от ваших требований) сервер

Caniuse — консольная утилита, которая говорит какие теги поддерживаются в браузерах


Дополнительные утилиты


trash-cli

trash-cli — утилита для просмотра того, что содержится в корзине


buku

buku — утилита для быстрой сортировки и хранения закладок сайтов со всех браузеров.


tmux

tmux — терминальный мультиплексор. Делит окно вашего терминала на панели. Очень удобно, когда в вашем распоряжении нет GUI вообще.


text-meme-cli

text-meme-cli — утилита для создания анимации текста на каком-либо фоне.


asciinema

asciinema — утилита для записи хронологии команд терминала в гиф-файл.


Youtube-dl

youtube-dl — утилита для скачивания видео/аудио с видеохостинга Youtube.


picofeed

picofeed — легкий RSS клиент для консолей


terminalnews

terminalnews — ещё один удобный RSS-клиент для консоли.

Это список утилит, которые я использую сам лично. Дополнительный список вы можете найти здесь ссылка на репозиторий GitHub
Я настоятельно попрошу вас дополнить список своими утилитами в комментариях. Если этот пост принёс в ваш терминал хоть чуточку чего-нибудь нового — был рад посодействовать.

© Habrahabr.ru