Старые линуксоиды выступают резко против каких-либо украшательств в Linux-дистрибутивах, с их точки зрения всё должно быть максимально упрощено, чтобы пользователь мог сосредоточиться на выполнении задач и не отвлекаться на разную мишуру. С этой позиции я в корне не согласен, так как считаю, что дистрибутив должен быть таким, чтобы в перерывах между работой глаз отдыхал и радовался, это создаёт особенный психологический настрой и позволяет действительно отдохнуть.
На канале уже неоднократно выходили заметки, посвящённые тому, как сделать внешний вид Linux привлекательнее: было там и про обои, и про шрифты в терминале, и про установку тем. Ссылки на этим материалы размещу ниже, на случай, если вы их не читали. Сегодня же поговорим про то, как улучшить вывод команды ls для дистрибутивов Linux.
🔧 Утилита eza, как замена утилите ls
Вывод стандартной системной утилиты ls (list) довольно скучен, даже несмотря на то, что у одноименной команды есть различные ключи.
Разработчики утилиты eza решили исправить это упущение и предлагают пользователям установить и настроить иное представление того, что содержится в той или иной пользовательской директории.
Далее расскажу, как получить вывод, похожий на тот, который показан на скриншоте выше.
⬇️ Установка утилиты eza
На официальной странице eza в Github представлена подробная таблица поддерживаемых дистрибутивов Linux. Также имеется отдельная страница, где содержатся инструкции для таких популярных дистрибутивов как Debian, Ubuntu, Archlinux, Fedora и openSUSE и Void Linux.
Так как на момент написания данной статьи под рукой был Manjaro Linux KDE, то установка оказалась простой донельзя и состояла в вводе всего одной команды в терминале:
sudo pacman -S eza
Утилита eza является кроссплатформенной, поэтому попробовать её смогут не только пользователи Linux, но и владельцы устройств с Windows и Mac OS.
📄 Предварительная настройка и использование утилиты eza
По идее, сразу после установки уже можно использовать eza для форматирования вывода содержимого каталога. Например, чтобы получить вывод как на скриншоте в первом разделе статьи, нужно использовать следующую команду:
eza -1 --icons
Ключ -1 выводит содержимое в количество одного элемента на строку, а --icons ожидаемо показывает иконки у файлов и папок. Примеры других ключей для вывода и его фильтрации вы сможете найти всё на той же странице проекта в Github.
Но нам же неинтересно каждый раз вводить команду с множеством её ключей, верно? Поэтому необходимо автоматизировать вывод, используя всеми любимые алиасы. Про то, что это такое и зачем они нужны рассказывал ранее на канале, можете познакомиться с материалами, если еще не читали.
Так как у меня Manjaro Linux и я использую оболочку, которая идёт по-умолчанию (измёненный в стилистике дистрибутива ZSH), то для настройки необходимо отредактировать файл .zshrc, который расположен в домашней директории пользователя.
nano $HOME/.zshrc
В открывшемся конфигурационном файле в самом низу размещаем алиас ls, который будет при вводе отрабатывать команду, представленную выше (в вашем случае там будет любая иная комбинация команды eza и ключей к ней)
После сохранения изменений перезапускаем оболочку через команду exec zsh и теперь уже при использовании ls у нас отображается необходимый выхлоп.
При этом, стоит понимать, что для отображения иконок не нужно ничего было ставить в дистрибутив, так как все необходимые зависимости утилита подхватила во время установки. Выходит, что для оформления красивого вывода содержимого каталога в консоли понадобилась всего одна команда.
🏁 Подведем итоги
Утилита eza будет, в первую очередь, интересна тем, кто часто работает с терминалом и осуществляет навигацию по каталогам. К тому же, при eza можно использовать для оформления красивого вывода скриптов, написанных на BASH. В общем, применение программке найти можно, я же её оставлю просто в системе, чтобы она крутилась через алиас ls и радовала глаз каждый раз, когда захочу посмотреть содержимое какой-либо папки.