Найти в Дзене

Улучшенный вывод команды ls в дистрибутивах Linux

Оглавление

Старые линуксоиды выступают резко против каких-либо украшательств в Linux-дистрибутивах, с их точки зрения всё должно быть максимально упрощено, чтобы пользователь мог сосредоточиться на выполнении задач и не отвлекаться на разную мишуру. С этой позиции я в корне не согласен, так как считаю, что дистрибутив должен быть таким, чтобы в перерывах между работой глаз отдыхал и радовался, это создаёт особенный психологический настрой и позволяет действительно отдохнуть.

На канале уже неоднократно выходили заметки, посвящённые тому, как сделать внешний вид Linux привлекательнее: было там и про обои, и про шрифты в терминале, и про установку тем. Ссылки на этим материалы размещу ниже, на случай, если вы их не читали. Сегодня же поговорим про то, как улучшить вывод команды ls для дистрибутивов Linux.

🔧 Утилита eza, как замена утилите ls

Вывод стандартной системной утилиты ls (list) довольно скучен, даже несмотря на то, что у одноименной команды есть различные ключи.

Вывод команды ls -l
Вывод команды ls -l

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

Вывод, сформированный утилитой eza
Вывод, сформированный утилитой 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.

Пример ключей, которые можно использовать в eza
Пример ключей, которые можно использовать в eza

Но нам же неинтересно каждый раз вводить команду с множеством её ключей, верно? Поэтому необходимо автоматизировать вывод, используя всеми любимые алиасы. Про то, что это такое и зачем они нужны рассказывал ранее на канале, можете познакомиться с материалами, если еще не читали.

Так как у меня Manjaro Linux и я использую оболочку, которая идёт по-умолчанию (измёненный в стилистике дистрибутива ZSH), то для настройки необходимо отредактировать файл .zshrc, который расположен в домашней директории пользователя.

nano $HOME/.zshrc

В открывшемся конфигурационном файле в самом низу размещаем алиас ls, который будет при вводе отрабатывать команду, представленную выше (в вашем случае там будет любая иная комбинация команды eza и ключей к ней)

Вносим изменения в конфиг ZSH
Вносим изменения в конфиг ZSH

После сохранения изменений перезапускаем оболочку через команду exec zsh и теперь уже при использовании ls у нас отображается необходимый выхлоп.

Вывод содержимого каталога через утилиту eza посредством алиаса ls
Вывод содержимого каталога через утилиту eza посредством алиаса ls

При этом, стоит понимать, что для отображения иконок не нужно ничего было ставить в дистрибутив, так как все необходимые зависимости утилита подхватила во время установки. Выходит, что для оформления красивого вывода содержимого каталога в консоли понадобилась всего одна команда.

🏁 Подведем итоги

Утилита eza будет, в первую очередь, интересна тем, кто часто работает с терминалом и осуществляет навигацию по каталогам. К тому же, при eza можно использовать для оформления красивого вывода скриптов, написанных на BASH. В общем, применение программке найти можно, я же её оставлю просто в системе, чтобы она крутилась через алиас ls и радовала глаз каждый раз, когда захочу посмотреть содержимое какой-либо папки.