- Консольные утилиты Linux, которые смогут облегчить вам жизнь
- Почему стоит написать об этом
- Перейдем к списку
- Передвижение по директориям
- Ranger
- Быстрый поиск
- autojump
- Редактирование
- Сами терминалы
- Alacritty (самый быстрый)
- Hyper (самый красивый)
- Быстрая справка (или поиск чего-либо)
- howdoi
- Веб-разработка
- Дополнительные утилиты
- trash-cli
- text-meme-cli
- asciinema
- Youtube-dl
- picofeed
- terminalnews
- А что за список?
- Консольные утилиты Linux, которые смогут облегчить вам жизнь (Часть 2)
- Предисловие для новичков
- Список программ
- Администрирование
- Веб-разработка
- Приложения, которые облегчают работу без GUI
- Дополнения
- Магия консоли. Подбираем полезные утилиты для работы в терминале
- Содержание статьи
- Система
- Pueue
- Vizex
- bashtop
- Butterfly Backup
Консольные утилиты Linux, которые смогут облегчить вам жизнь
Немного о утилитах на консоли, которые знают немногие, однако они могут быть полезны как для начинающего джуна, так и для крепкого сеньора.
Почему стоит написать об этом
Написать о утилитах (прежде всего консольных) стоит из-за того, что я вижу, как многие люди не используют мощность консоли на все 100%. Многие ограничиваются простым созданием файлов, а также переходом между директориями, работая в консоли. Я считаю что это следствие того, что в рунете мало источников, где бы могли нормально рассказать о утилитах, как на них работать, и что они делают.
Оценивать утилиты мы будем по 5-бальной шкале. Сделано это для того, чтобы вы сразу могли понять, где на мой субъективный взгляд, одна утилита на голову выше другой. Я не призываю использовать что-то определенное, или использовать только командные утилиты. Нет, наоборот, я просто даю вам выбор. Пользоваться или нет полученными знаниями, на которые я потратил кучу времени — дело ваше.
Я сразу хочу сказать, что в этом посте присутствуют утилиты, которые понадобились непосредственно мне при разработке. Если у вас есть свои предложения как дополнить этот список, милости прошу в комментарии.
Перейдем к списку
Передвижение по директориям
ViFM — vim-подобный файловый менеджер, который способен быстро переходить между директориями и выполнять какие-либо операции с файлами и директориями посредством ввода команд или хоткеев. По умолчанию представляет из себя две панели (чёрную и белую) между которыми вы можете переключаться.
Оценка: 3, ибо для того чтобы пользоваться этим ФМ, вам нужно будет выучить кучу vim-подобных команд, а также знать хоткеи vim’а
mc (Midnight Commander) — классика в Linux’e. С помощью него вы сможете также быстро перемещаться между директориями, менять права доступа, открывать файлы с помощью встроенного редактора, а также многое другое. В программу встроен довольно понятный интерфейс, где внизу находятся хоткеи, а вверху две панели (между которыми вы переключаетесь с помощью клавиши Tab).
Оценка: 5. Это то, что нужно новичку, и подходит продвинутому пользователю. Вам не нужны никакие предварительные знания, чтобы полноценно использовать этот ФМ.
Ranger
Ranger — ещё один ФМ с вим-подобной раскладкой. Однако, на этот раз утилита написана на Python, что делает её медленнее, но в то же время чертовски гибкой и удобной. Вы можете открывать файлы сразу из менеджера с помощью rifle (сценарий, который ищет какая программа подойдет для открытия данного файла на вашем ПК). Также доступно редактирование, просмотр быстрых клавиш (отдельно от мануала, который вызывается командой :help), и много других плюшек.
Оценка: 4. Было бы 5, если бы не скорость работы
Быстрый поиск
Быстрый поиск не доступен на оболочке Gnome, например. (Здесь говорится о быстром поиске включая содержимое файлов. Gnome же обладает просто поиском, причем ещё и очень медленным)
fzf (FuzzyFinder) — утилита для быстрого поиска среди директорий, а также текста в определенном массиве файлов. Она может быть легко заменена на find, однако является его более быстрым и удобным аналогом.
Оценка: 5. Утилита отлично выполняет свою работу.
hf (happyfinder) — ещё одна утилита для быстрого поиска в директориях и файлах. Отличается тем, что доступны также некоторые хоткеи и использование команд в самой утилите реализовано чуточку удобнее, чем у конкурента
autojump
autojump — утилита для быстрого перепрыгивания через папки к определенному файлу.
Редактирование
Тут я ограничюсь только списком утилит. Ибо редактор — то, чем вы пользуетесь постоянно (а если не пользуетесь, то тем более вам не нужны лишние объяснения), поэтому тут на вкус и цвет
- Vim
- NeoVim
- Nano (стандартный редактор Linux)
- Vi (ещё один стандартный редактор Linux)
- Emacs
- Micro
- Kakoune
- Doom Emacs (просто конфигурация Emacs, однако изменяет его так, что это уже совсем не похоже на ванильный Emacs)
Сами терминалы
Alacritty (самый быстрый)
Alacritty — эмулятор терминала на Linux/Windows/MacOS, который считается самым быстрым (так пишет сам автор этого терминала)
Оценка: 4. На мой субъективный взгляд — не самый удобный и комфортный терминал.
Hyper (самый красивый)
Hyper — терминал, который заслуживает того, чтобы вы попробовали использовать его на своей системе. Его интерфейс сделан с помощью CSS/HTML, а базируется он на фреймворке Electron (что конечно же будет делать его немножко прожорливее)
Оценка: 5. Терминал удобный и красивый. Он расширяемый и в нём есть куча фич.
Быстрая справка (или поиск чего-либо)
ddgr — командная утилита, которая позволяет пользоваться DuckDuckGo прямо из консоли.
Оценка: 5. Программа быстро выполняет запрос и отдаёт результаты (естественно, ибо не нужно прогружать HTML/CSS. Всё быстренько парсится)
tldr — замена стандартного man, который умеет всё тоже самое, однако вместо того, чтобы давать полный мануал к программе, она даёт краткие вырезки для быстрого использования
Оценка: 4. Иногда tldr выдаёт уж слишком короткую справку, а также на многие программы просто нет документации в tldr
howdoi
howdoi — парсит ответы с разных сайтов на вопросы о программировании.
Оценка: 3. Часто находит ответы на совсем не те вопросы. Также крайне неудобно, что ответ выводится только один
navi — консольная утилита, подобная howdoi, однако отвечающая сугубо на вопросы о командах консоли
how2 — утилита подобная howdoi, однако дающая выбор на какой вопрос посмотреть ответ. (Парсит всё с StackOverflow)
Оценка: 5. Лучшая утилита для быстрого поиска решений
Веб-разработка
Surge — утилита для быстрого пуша сайтов на бесплатный (или платный, в зависимости от ваших требований) сервер
Caniuse — консольная утилита, которая говорит какие теги поддерживаются в браузерах
Дополнительные утилиты
trash-cli
trash-cli — утилита для просмотра того, что содержится в корзине
buku — утилита для быстрой сортировки и хранения закладок сайтов со всех браузеров.
tmux — терминальный мультиплексор. Делит окно вашего терминала на панели. Очень удобно, когда в вашем распоряжении нет GUI вообще.
text-meme-cli
text-meme-cli — утилита для создания анимации текста на каком-либо фоне.
asciinema
asciinema — утилита для записи хронологии команд терминала в гиф-файл.
Youtube-dl
youtube-dl — утилита для скачивания видео/аудио с видеохостинга Youtube.
picofeed
picofeed — легкий RSS клиент для консолей
terminalnews
terminalnews — ещё один удобный RSS-клиент для консоли.
А что за список?
Это список утилит, которые я использую сам лично. Дополнительный список вы можете найти здесь ссылка на репозиторий GitHub
Я настоятельно попрошу вас дополнить список своими утилитами в комментариях. Если этот пост принёс в ваш терминал хоть чуточку чего-нибудь нового — был рад посодействовать.
Источник
Консольные утилиты 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-графика) прямо в консоли
Дополнения
Если у вас есть утилиты, которые вам нравятся, напишите о них в комментариях и я дополню ими статью! Спасибо за то, что дочитали.
Источник
Магия консоли. Подбираем полезные утилиты для работы в терминале
Содержание статьи
Система
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 можно всего в три команды:
Пример использования от автора утилиты:
Источник