Почему стоит использовать exa вместо привычной консольной утилиты ls

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

Прежде чем перейти к статье, хочу вам представить, экономическую онлайн игру Brave Knights, в которой вы можете играть и зарабатывать. Регистируйтесь, играйте и зарабатывайте!


Изображение: Opensource.com

Цель автора статьи — показать, что exa может легко заменить стандартную утилиту ls. И более того, в сравнении с ls, exa — более гибкий и мощный инструмент.

Стараясь сэкономить время и силы, мы автоматизируем часто повторяющиеся и сложные операции. Например, для отслеживания изменений содержимого каталогов и информации о файлах в Linux-системах многие по-прежнему используют команду ls. Но вывод ls по умолчанию [по мнению автора] не совсем приятен для глаз, поэтому приходится выкручиваться. При работе с ls возникает ещё ряд неудобств, но в этой статье мы не будем про них говорить. И вообще, зачем тратить на это время, если есть exa?

Exa — современная и более достойная альтернатива утилите ls. Exa написана на языке Rust, который хорошо зарекомендовал себя из-за высокой скорости работы, повышенной безопасности и качественной реализации параллелизма.

Установка exa


Всё предельно просто:

$ dnf install exa

Возможности exa


По сравнению с ls, exa обладает более широкими возможностями. Благодаря продуманным настройкам по умолчанию она уже на старте выигрывает по функционалу и визуалу. В выводе exa используется своя подсветка для разных типов файлов и метаданных. Она способна распознавать симлинки, расширенные атрибуты и Git-файлы. При этом утилита быстрая, компактная и поставляется с одним единственным бинарником.

Отслеживание изменений содержимого каталогов


Пример: вы можете использовать exa, чтобы узнать информацию о новом файле, добавленном в некий репозиторий Git.

$ exa --long --header --git


Изображение: Sudeshna Sur, CC BY-SA 4.0

Отображение дерева


$ exa --tree --level=2

Параметр level определяет способ отображения листинга с заданным уровнем вложенности каталогов. Если нужно просмотреть больше подкаталогов, то level нужно увеличить.


Изображение: Sudeshna Sur, CC BY-SA 4.0

А на примере этого дерева видно, насколько детально можно отображать метаданные о каждом файле.


Изображение: Sudeshna Sur, CC BY-SA 4.0

Цветовые схемы


По умолчанию exa раскрашивает файлы разных типов в соответствии со встроенной цветовой схемой. Схема не только различает файлы и директории в целом, но и присваивает свой цвет каждому из таких файлов, как Cargo.toml, CMakeLists.txt, Gruntfile.coffee, Gruntfile.js, Makefile. Этим список не ограничивается. Полную цветовую схему можно посмотреть на сайте утилиты.

Расширенные атрибуты


Для просмотра расширенных атрибутов нужно добавить в команду ключ --extended:

$ exa --long --extended ‘GettingStartedWithOpencV’

Симлинки


Exa не просто знает, что такое симлинк, она может по симлинку найти и отобразить фактическое местоположение файла.


Изображение: Sudeshna Sur, CC BY-SA 4.0

Рекурсивный обход подкаталогов


Если вы хотите получить листинг для всех подкаталогов текущего каталога, перейдите в нужный вам каталог и выполните следующую команду:

$ exa --recurse

Что и требовалось доказать


Exa — один из наиболее простых и гибких инструментов. Она позволяет легко работать с большим количеством Git- и Maven-файлов. Подсветка помогает ориентироваться во множестве каталогов и их подкаталогов, а также следить за расширенными атрибутами.

Что вы думаете об утилите exa? Используете её в работе? Или вместо ls и exa пользуетесь чем-то другим?



Дешёвые серверы для любых задач. Используем новейшее железо, лучший дата-центр в Москве уровня надёжности TIER IV, бесплатно предоставляем защиту от DDoS-атак на любом тарифном плане, который можно создать самостоятельно в течение минуты.
Зарегистрируйтесь по ссылке выше или кликнув на баннер и получите 10% скидку на первый месяц аренды сервера любой конфигурации!

Источник: https://habr.com/ru/company/macloud/blog/549988/


Интересные статьи

Интересные статьи

Сейчас я занимаюсь заменой моих cron-заданий на таймеры systemd. Я пользовался таймерами несколько лет, но обычно в тонкости их применения особо не углублялся, разбираясь лишь с тем, ...
Систему управления своим временем с использованием кухонного “помидорного” таймера пиарят все, кому не лень. Помогает она не всем. Но я вижу, что разочарованные экспериментаторы наступают на одни...
Несколько месяцев назад я упомянул в одном посте, что это миф, будто бы const помогает включать оптимизации компилятора в C и C++. Я решил, что нужно объяснить это утверждение, особенно потому,...
Примерно полтора года назад я начал участвовать в хакатонах. За этот временной промежуток я успел принять участие в более чем 20 мероприятиях различного масштаба и тематик в Москве, Хельсинки...
В сфере разработки программного обеспечения, нередко встречаются тезисы наподобие «Nobody cares about your code» (перевод — «Твой код никого не интересует»), «Код всего лишь инструмент» и ситуаци...