- Консольные утилиты Linux, которые смогут облегчить вам жизнь (Часть 2)
- Предисловие для новичков
- Список программ
- Администрирование
- Веб-разработка
- Приложения, которые облегчают работу без GUI
- Дополнения
- Выбор консольных приложений для повседневного использования
- Магия консоли. Подбираем полезные утилиты для работы в терминале
- Содержание статьи
- Система
- Pueue
- Vizex
- bashtop
- Butterfly Backup
Консольные утилиты Linux, которые смогут облегчить вам жизнь (Часть 2)
Так как предыдущая статья зашла довольно хорошо, было бы неправильно не поделиться дополнительными утилитами, которые я использую и по сей день. Сразу хочу оговориться, что статья адаптирована и для новичков, а старым линуксоидам придётся немного сточить зубы потерпеть разжевывание материала. Вперёд в тему!
Предисловие для новичков
Стоит начать с того, какой у вас стоит дистрибутив. Вы, конечно же, можете всё компилировать из исходников, однако не у всех пользователей есть такие навыки, а если компилятор выдаст ошибку, то пользователи просто расстроятся и не смогут попробовать новые утилиты, а не пойдут искать решения на стаке. Во избежание этого условимся на простых правилах:
- Если вы сидите на ветке Debian (Ubuntu, Debian, Mint, Pop!_os) попробуйте поискать программы на Launchpad, пакеты в репозиториях утилит формата .deb
- Если вы сидите на ветке Arch (Arch, Manjaro, Void Linux) то попробуйте поискать программу в AUR репозиториях, сами утилиты и программы в формате .appimage (если это графические утилиты), а также PKGBUILD файлы для компилирования исходников автоматически
- Если вы сидите на ветке RedHat (Fedora, CentOS), то попробуйте воспользоваться встроенной в большинство дистрибутивов ветки RedHat утилитой Flatpak (аналог Snap). Также, попробуйте поискать пакеты в формате .rpm
Если говорить обо мне, то у меня стоит Manjaro CLI, с установленной на неё i3-gaps и собственными конфигурациями, если кому интересно — можете пользоваться, остальным же советую просто придерживаться правил вверху и помнить, что любая проблема в Linux решается простым гуглением и логическими размышлениями.
Список программ
Администрирование
snap install gotop —classic
- glances — ещё один аналог htop, однако на этот раз более функциональный
Установка с помощью pip
pip install glances
Веб-разработка
- JSShell — если вам по какой-то причине не нравится консоль браузера, то всегда можно сделать те же операции в терминале
- live-server — утилита для легкого запуска локального сервера с автообновлением при изменении index.html (или другого файла)
Установка с помощью npm
sudo npm i live-server -g - wp-cli — утилита для администрирования сайта на WordPress с помощью консоли
Установка с помощью копирования исходника из репозитория
Установка c помощью npm
sudo npm i surge -g
Установка с помощью любого менеджера пакетов
sudo apt install httpie || sudo pacman -Sy httpie || sudo dnf install -Sy httpie
Установка c помощью npm
sudo npm install hget -g
Приложения, которые облегчают работу без GUI
- alsamixer — утилита для настройки звука
- neovim — удобный редактор с поддержкой асинхнронного скачивания плагинов и линтинга языков
- browsh — браузер с псевдо-GUI (ASCII-графика) прямо в консоли
Дополнения
Если у вас есть утилиты, которые вам нравятся, напишите о них в комментариях и я дополню ими статью! Спасибо за то, что дочитали.
Источник
Выбор консольных приложений для повседневного использования
Реквестирую истории успеха использования консольных приложений, речь идет о ПО общего назначения. Ниже привожу список того, что использую сам:
- Почтовый клиент: alpine
- IM: mcabber
- Торрент клиент: rtorrent
- RSS ридер: snownews
- Текстовый редактор: vim
- Файловый менеджер: mc
- Аудио проигрыватель: cmus
- Видео проирыватель: mplayer
- Редактор изображений: imagemagick
- Просмотрщик изображений: feh
- Просмотрщик pdf, djvu, ps: zathura
- Просмотрщик fb2: fbless
- Калькулятор: bc
Интересуют альтернативы вышеперечисленного, желательно с указанием того, почему Вы предпочитаете именно указанную альтернативу, ну и что еще за софт используете в повседневной работе тоже интересно.
Браузер links2. Не знаю почему. Пробовал links и ещё какой-то — этот удобнее оказался. Легко русифицировался в настройках и показывает белые буквы на чёрном фоне. Хотя наверное в других эти параметры тоже настраиваются, не знаю. По-моему в lynx’е белый фон, вырвиглазно очень.
Текстовый редактор nano. Не потому что только им пользуюсь, просто vi и vim для меня(!) неудобные(не осилил).
Шелл: zsh, если под никсами.
IM: barnowl. Потому, что mcabber упорот. Количество действий на приватную мессагу в конференцию зашкаливает.
активно пользуюсь vim и командной строкой. пытался привыкнуть к eclipse, но так и не смог
Торрент-клиент: внезапно, transmission-daemon + transmission-remote. У него нормальный CLI вместо упоротого cursed-интерфейса.
Файловый менеджер: не нужен. Если очень хочется, то ranger.
Браузер: w3m с картинками.
Почтовый клиент: mutt (за конфиг)
RSS ридер: newsbeuter (внешний вид настраивается под mutt)
Аудио проигрыватель: mpd+ncmpcpp (классика)
Просмотрщик изображений: sxiv (легче feh’а)
у меня как-то наоборот, пользовался много eclipse — пытался перейти на vim. не получается.
нет, текст в нём редактировать для меня не проблема. но вот как например переходить к определению функции — быстро перемещаться между файлами проекта, быстро компилировать и запускать (тут в принципе mvn не так уж долго набирать, соглашусь), быстро смотреть список методов в классе в виде контекстного меню, например. ну и автодополнение конечно же.
Это все в vim присутствует, нужно только немного терпения, что бы настроить 🙂
чем лучше links2?
Чем ranger лучше mc?
это всё необязательно
все почтовики сосут. mutt более-менее удобен. alpine неюзабельное г-но.
IM в консоли неудобно.
нужен исключительно разгребать чужие помойки.
могу ещё порекомендовать консольный графический редактор без мыши и стрелок с CLI.
это да — полезная штука.
По-моему в lynx’е белый фон, вырвиглазно очень.
ты бредишь — или твой маинтейнер упоролся. По дефолту чёрный фон. Как у всех консольных программ.
Текстовый редактор nano. Не потому что только им пользуюсь, просто vi и vim для меня(!) неудобные(не осилил).
ну мучайся. Каждая минута в nano == 50 секунд потерянного времени. Впрочем, ты наверное молод, у тебя вся жизнь впереди, и кажется, что она бесконечна. Но это не так.
Торрент-клиент: внезапно, transmission-daemon + transmission-remote. У него нормальный CLI
его GUI также удобные.
Калькулятор: ghci, консольная mathematica
fm: ranger. Иногда удобен для быстрого просмотра каталогов с кучей текстовых файлов, а так больше krusader.
Плеер: ncmpcpp, уже называли.
mcabber для жаббера, irssi для Иирочки — последний вкупе с bitlbee позволяет использовать и IM, но он не умеет в юникод в никах, даже хотя бы windows-1251, но попробуйте, — может, вам повезло и вы не сидите в конференциях, где есть пользователи с не-латинскими никами.
rtorrent -> aria2 для торрентов, т.е. сперва использовал rtorrent, потом подумав, что мне ничего больше, кроме как скачать торрент и уйти с раздачи не нужно, то выбрал aria2; еще она умеет в magnet ссылки, которые используются на пиратской бухте.
и небольшой экскурс: она чисто консольная, без всяких интерфейсов — как wget или curl. aria2c —show-files
/file.torrent отображает список файлов, по необходимости их можно grep’апть, чтоб узнать номера, после чего они выбираются и качаются aria2c —select-file 1,2,3,4,5,7
/file.torrent.
из особенностей aria2, когда качаешь rtorrent’ом, то тот заранее создает все файлы (так почти все клиенты делают, еще точнее — все, кроме одного из известных мне), т.е. тебе надо скачать всего один файл из
1000 — создаются все-равно они все. aria2 такого не делает и создает только затрагиваемые во время загрузки файлы.
rss. ну, есть самописанные костыли, — IRC бот, который флудит в чатике потоком сообщений об обновлениях на сайтах. в rss клиентах меня не устраивает, что приходится самому тыкать по пунктам или сообщениям в «меню», чтобы прочитать что-то. а было бы удобно, чтоб клиент элементарно выводил поток сообщений (обновления) с настраиваемым форматом (сразу, — заголовок, ссылка и обрезанное содержание). и никуда жать не нужно.
файловым менеджером не пользуюсь, вообще я уже привык к explorer’у не могу осилить что-либо гуйное, но отличающееся от него в линуксах, поэтому пользуюсь coreutils. двухпанельники типа mc неудобны.
аудио mpd+ncmpcpp. пробовал cmus, moc, — но ncmpcpp самый богатый функционалом и с классическим интерфейсом без ненужных «нескучностей» (вообще, они тоже имеются, просто не мазолят глаза).
feh, gimp (извините за оффтоп, но это просто здравый смысл)
калькулятор $(()), если что-то сложнее, то гугл
терминал rxvt-unicode, командный интерпретатор bash (zsh кроме дополнительных рюшечек-свистелок ничего не дает, да и те не безграничны как хотелось бы, и единственная киллер-фича — автодополнение по табу удобнее), tmux как консольный «оконный менеджер», хотя последний используется редко, только при одновременной работе с кучей файлов (разработкой чего-нибудь)
архиватор tar, и на всякий случай unrar, unzip
htop для системного мониторинга, + слух (слышно, когда разогнался кулер)
Источник
Магия консоли. Подбираем полезные утилиты для работы в терминале
Содержание статьи
Система
Pueue
Утилита Pueue — интересная штука для запуска долгих задач и для работы с созданной очередью задач в системе, конечно. Нужна для тех, кому вполне очевидных для таких случаев jobs / fg / bg / screen / tmux по какой‑то причине оказывается недостаточно.
Демо из репозитория
Как пишут сами разработчики, Pueue нужен, когда задачи очень долгие либо их нужно выполнять параллельно, имея при этом полный контроль над ними. Лично мне утилита показалась намного более дружелюбной, чем штатный bg / fg .
Crongo — еще одна попытка создать удобный инструмент для работы с cron. Утилита делает примерно то же самое, что Pueue, так что может в некотором смысле быть альтернативой.
Nq — еще одна простая утилита, которая позволяет запускать очереди из заданий в системе. Не то чтобы без нее было невозможно жить, но порой очень сильно помогает. Выглядит куда менее привлекательно, чем Pueue, но и в работе проще.
Она настолько простая, что для ее использования достаточно просто увидеть пример:
% mkdir -p / tmp/ downloads
% alias qget=’NQDIR=/ tmp/ downloads nq wget’
% alias qwait=’NQDIR=/ tmp/ downloads fq -q’
window1% qget http://mymirror/big1.iso
window2% qget http://mymirror/big2.iso
window3% qget http://mymirror/big3.iso
% qwait
. wait for all downloads to finish .
Vizex
Если ты работаешь в терминале дольше недели, ты, конечно, знаешь о df и его сухом выводе. Давай разукрасим его и сделаем ближе к людям!
Vizex и vizexdf — это апгрейд df , который выполняет свою задачу куда нагляднее и приятнее внешне.
Как выглядит vizex
bashtop
В фильмах о хакерах люди видят огромные сводные таблицы с информацией о системе и графиками, а у тебя их до сих пор нет? Не беда! Лови bashtop — это как раз такой дашборд. Если у тебя вдруг есть свободный монитор, на который его можно повесить, — ты знаешь, как добавить +1000 к своей гиканутости в глазах посетителей.
Работает!
Bashtop умеет показывать не только общую информацию, но и детали по каждому процессу. Позволяет эти процессы сортировать по различным параметрам и легко конфигурируется.
А еще есть реализация этого красавца на Python — bpytop. Выглядит не менее эффектно, да и по возможностям не отстает.
Занятная консольная утилита для анализа логов nginx. Встречай Rhit — это, конечно, не GoAccess, но выглядит тоже интересно.
Умеет рисовать графики частоты запросов прямо в консоли.
Скрины стырены с сайта программы
Есть анализ трендов в запросах и удобный графический вывод этого в консоль.
Конечно же, все можно фильтровать, чтобы отслеживать только необходимое.
Lnav — это анализатор логов, который умеет работать не только с nginx, в отличие от Rhit. Вот список его достоинств:
- может сводить все требуемые логи на один экран. Ты можешь задать мониторинг логов сразу нескольких сервисов, и он покажет все сразу;
- умеет подсвечивать текст по формату. Имеется десять встроенных форматов, в том числе один «общий», то есть подходящий почти к любому логу;
- автоматически определяет сжатые логи в форматах gzip и bzip2 и разжимает их на лету;
- умеет фильтровать на основе регулярных выражений. Если выводишь много логов сразу — можно отфильтровать лишнее;
- может строить гистограммы сообщений по времени;
- красиво выводит XML и JSON. Просто нажми Shift+P;
- к логам можно обращаться как к виртуальной SQLite БД, которая обновляется вместе с логами в реальном времени;
- lnav поддерживает разные темы оформления своего интерфейса;
- при вводе команд также есть подсветка синтаксиса и автодополнение.
lnav разбирает логи sshd
Прямо на сайте есть готовые бинарники под Linux и macOS: видимо, это на случай, если твой сервер — старый макбук.
Butterfly Backup
Butterfly Backup — это такая интересная обертка вокруг rsync, которая умеет создавать и восстанавливать бэкапы. Список умений действительно внушительный:
- поддержка тихого бэкапа;
- все бэкапы аккуратно рассортированы;
- просмотр сведений о конкретном бэкапе;
- поддержка разных режимов копирования;
- можно бэкапить сразу несколько компов, причем параллельно;
- можно восстанавливать копию даже не на том компьютере, где она была создана. Теоретически, это может быть полезно при миграции на новое оборудование. Более того, можно восстановить бэкап даже на другой операционной системе;
- поддерживаются политики относительно старых бэкапов: их можно удалять по достижении лимита занятого хранилища;
- экспорт бэкапов для удобной перевозки сторонними средствами.
Установить Butterfly Backup можно всего в три команды:
Пример использования от автора утилиты:
Источник