Bat: как обычный cat обрел крылья

01 Jul, 2026
59,509
🔱 1,575
👥 202

Знакомо ли вам чувство, когда хочется быстро просмотреть файл в терминале, но обычный cat выдает монотонный текст без подсветки синтаксиса? В 2018 году разработчик David Peter создал решение — утилиту bat, которая с тех пор собрала более 50 тысяч звезд на GitHub. Давайте разберемся, почему этот инструмент стал must-have для многих разработчиков.

Что такое bat?

Bat позиционируется как "cat с крыльями" — это продвинутая замена стандартной утилиты Unix cat с рядом полезных улучшений:

  • Подсветка синтаксиса для 200+ языков программирования
  • Интеграция с Git для отображения изменений
  • Автоматическая постраничная навигация
  • Поддержка тем оформления

Пример подсветки синтаксиса в bat

Ключевые возможности

1. Умная подсветка синтаксиса

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

# Просмотр Python-файла с подсветкой
bat script.py

2. Работа с Git

Bat автоматически показывает изменения в файле по сравнению с индексом Git — добавленные, измененные и удаленные строки отмечаются на полях.

Реклама

Интеграция с Git

3. Гибкое поведение

По умолчанию bat использует постраничный вывод (как less), но может работать и в режиме обычного cat:

# Принудительный вывод без постраничной навигации
bat --paging=never file.txt

Почему разработчики любят bat

  1. Экономия времени — не нужно открывать IDE для беглого просмотра файлов
  2. Удобство отладки — изменения в коде сразу видны благодаря Git-интеграции
  3. Гибкость — поддерживает кастомные темы и синтаксисы
  4. Совместимость — работает как drop-in замена для cat в большинстве сценариев

Избранные сценарии использования

Bat отлично комбинируется с другими инструментами командной строки:

# Просмотр логов с подсветкой
tail -f /var/log/nginx/access.log | bat -l log

# Поиск с fzf и предпросмотром
fzf --preview "bat --color=always --style=numbers --line-range=:500 {}"

# Просмотр man-страниц с подсветкой
export MANPAGER="sh -c 'col -bx | bat -l man -p'"
man ls

Установка

Bat доступен для всех популярных платформ:

  • Linux (apt, pacman, yum и другие менеджеры пакетов)
  • macOS (Homebrew, MacPorts)
  • Windows (Chocolatey, Scoop, WinGet)

Для Ubuntu/Debian:

sudo apt install bat

Bat — это пример того, как можно улучшить повседневные инструменты, сохранив их простоту. Если вы:

  • Часто работаете в терминале
  • Устали от монотонных текстовых файлов
  • Хотите видеть изменения в коде без лишних действий

— самое время попробовать bat. Этот инструмент быстро становится незаменимым в арсенале разработчика, и после недели использования вы вряд ли захотите возвращаться к обычному cat.

🍪 Мы используем файлы cookie и сервис аналитики Яндекс.Метрика, чтобы сайт работал лучше. Продолжая пользоваться devtrends.ru, вы соглашаетесь с обработкой данных согласно Политике конфиденциальности.