cat → bat ибо встроенная подсветка синтаксиса, нумерация строк и адекватный пейджинг;ls → eza, потому что позволь себе уже полюбить цветовое кодирование и иконки;find → fd за интуитивный синтаксис и быструю выдачу;grep → ripgrep опять же из-за скорости;top → btop для комплексного мониторинга ресурсов, хоть btop и перегружен визуально.Дальше на ночь пятничная сказка про холивар.
Базовый набор GNU coreutils создавался в эпоху, когда деревья в файловых системах были маленькими, а ресурсов не хватало ни на что лишнее. Синтаксис классического find до сих пор вызывает нервный тик, а чтение логов через cat без подсветки пора признать формой легкого мазохизма. Современный подход предлагает инструменты, которые написаны преимущественно на Rust и делают ровно то же самое, но с человеческим лицом. А ещё они работают быстрее и прямо из коробки понимают правила .gitignore.
В подобных обсуждениях всегда появляется Суровый Системный Администратор Старой Школы и настаивает, что все эти цветастые игрушки абсолютно бесполезны при заходе по SSH на боевой сервер. Там тебя встретит голый bash и девственно чистый vi. В ответ на это в него кидаются терраформами и ансиблами и спрашивают, а зачем мол вообще в наше время ходить на продакшен по ssh?
Пожалуй, единственное здравое правило, которое можно вынести из этого противостояния: как только дело доходит до автоматизации и bash-скриптов, надо возвращаться к POSIX-совместимым конструкциям и классическим coreutils, иначе автоматизация сломается на первой же машине.