Bat - клон Cat с подсветкой синтаксиса и интеграцией Git.
В Unix-подобных системах команда
cat используется для печати и объединения файлов. Используя команду cat, мы можем вывести содержимое файла на стандартный вывод, объединить несколько файлов в целевой файл и добавить несколько файлов в целевой файл. Сегодня
наткнулась на аналогичную утилиту под названием Bat в переводе Летучая мышь . Это просто клон команды cat с некоторыми дополнительными интересными функциями, такими как подсветка синтаксиса, интеграция с git, автоматическое разбиение по страницам и т. д.
В системах Debian, Ubuntu, Linux Mint для установки можно загрузить файл .deb (в том числе для 32-битной архитектуры) со страницы
Релизы. Начиная с Ubuntu 20.04 пакеты bat стали включаться в
основной репозиторий Ubuntu.
Использование команды Bat очень похоже на команду cat.
Чтобы создать новый файл с помощью bat, выполните:
bat> file.txt
Чтобы просмотреть содержимое файла с помощью bat, запустите:
bat file.txt
Для просмотра сразу несколько файлов команда:
bat file1.txt file2.txt
Чтобы добавить содержимое нескольких файлов в один файл:
bat file1.txt file2.txt file3.txt> document.txt
Bat поддерживает подсветку синтаксиса для большого количества языков программирования и разметки.
Для примера снимок отображения содержимого файла reverse.py с использованием команды cat и bat
Команда Cat показывает содержимое файла в текстовом формате, тогда как Bat показывает вывод с выделением синтаксиса и порядковым номером в аккуратном табличном формате столбцов.
Для отображения только номера строк без столбцов таблицы в команде используется флаг -n , например,
bat -n reverse.py
Ещё одна примечательная особенность команды Bat - она поддерживает
автоматическое разбиение на страницы . Это означает, что если вывод файла слишком велик для одного экрана, команда bat автоматически направляет свой вывод команде less , чтобы просматривать вывод страницы за страницей. В то же время при просмотре содержимого файла, который занимает несколько страниц, с помощью команды cat, приглашение быстро переходит на последнюю страницу файла и не видно содержимое ни в начале, ни в середине текста. Таким образом, может потребоваться передать вывод команды cat по конвейеру команде
less, чтобы просмотреть её содержимое постранично с самого начала.
cat reverse.py | less
После чего можно просматривать выходные данные постранично, нажимая клавишу ENTER.
Команда bat автоматически перенаправит вывод файла, который занимает несколько страниц.
Для перехода на следующую страницу просто нажмите клавишу ENTER.
Настройка летучей мыши.
Если не нравятся темы по умолчанию, их также можно изменить. У летучей мыши тоже есть опция для этого.
Настроить можно следующим образом:
bat --generate-config-file
В результате создастся дефолтный конфиг в домашней директории пользователя. Путь можно вывести с
bat --config-file
Для наглядного представления имеющихся тем с названием выполним:
bat --list-themes
В файле
~/.config/bat/config раскомментируем строчку
--theme и вставляем значение интересующей темы, сохраняем. При следующем вызове утилиты параметр подтянется.
Для гарантированного применения изменений рекомендуется дополнить файл ~/.bashrc строкой
alias cat=bat
Источники для создания темы:
ostechnix.com и
linuxmint.com.ru