Полное руководство по команде Linux cat — от просмотра файлов до объединения и создания!

Обзор

Полное руководство по одной из самых популярных команд в терминалах Linux и Ubuntu — cat: от основ до практического применения. В этом руководстве на примерах рассмотрены не только простой вывод содержимого файлов, но и отображение номеров строк, визуализация пробельных символов, объединение файлов и создание файлов с использованием EOF (Heredoc).

1. Основное использование команды cat и мгновенный просмотр текстовых файлов

Чтобы создать образцовый текстовый файл для практики использования команды cat, выполните команду echo "Hello Ubuntu 24.04 LTS World!" > sample.txt.

echo “Hello Ubuntu 24.04 LTS World!” > sample.txt

Команда cat выводит полное содержимое указанного текстового файла на экран терминала.
При выполнении команды cat sample.txt содержимое файла сразу же отображается на экране.
⚙️ [Основные опции]

-n : Нумерует все выводимые строки.
-b : Нумерует только непустые строки.
-s : Сжимает несколько подряд идущих пустых строк в одну.
-E : Отображает символ $ в конце каждой строки для визуализации переноса строки.
-T : Заменяет символы табуляции (TAB) на ^I.
-A : Визуализирует все элементы внутри файла, включая табуляцию, переносы строк и управляющие символы.

cat sample.txt

2. Использование опций нумерации строк (-n) и визуализации спецсимволов (-A)

Чтобы подготовить тестовый файл для практики с опциями команды cat, выполните команду echo -e "First Line\nSecond Line\n\nFourth Line\tTabbed" > options_demo.txt.

echo -e “First Line\nSecond Line\n\nFourth Line\tTabbed” > options_demo.txt

При выполнении команды cat -n options_demo.txt на экран выводится все содержимое файла с нумерацией строк, включая пустые строки.
Это удобно для быстрого определения точного расположения строк при просмотре кода или конфигурационных файлов.

cat -n options_demo.txt

При выполнении команды cat -A options_demo.txt отображаются все невидимые управляющие символы, такие как табуляция и переносы строк.
В конце каждой строки появляется символ $, а вместо табуляции (TAB) выводится ^I, что позволяет четко обнаружить спецсимволы или ошибки форматирования в файле.

cat -A options_demo.txt

3. Объединение нескольких текстовых файлов (Concatenate) и сохранение в новый файл

Чтобы создать первый конфигурационный файл part1.txt для практики объединения файлов с помощью команды cat, выполните команду echo "[Server Config]" > part1.txt.

echo “[Server Config]” > part1.txt

Затем выполните команду echo "Port=8080" > part2.txt, чтобы создать второй конфигурационный файл part2.txt для объединения.

echo “Port=8080” > part2.txt

Выполните команду cat part1.txt part2.txt > combined_config.txt, чтобы последовательно объединить содержимое двух файлов.
Использование символа перенаправления (>) позволяет сразу сохранить результат объединения в новый файл combined_config.txt вместо вывода в терминал.

cat part1.txt part2.txt > combined_config.txt

Выполните команду cat combined_config.txt, чтобы проверить полное содержимое объединенного файла.
Вы увидите, что содержимое [Server Config] из part1.txt и Port=8080 из part2.txt последовательно объединены и сохранены в файле.

cat combined_config.txt

4. Создание многострочных файлов прямо в терминале без редактора (Heredoc / EOF)

Выполните команду cat << 'EOF' > heredoc_demo.txt, чтобы создать файл heredoc_demo.txt с несколькими строками текста прямо из терминала без открытия отдельного редактора.
Использование синтаксиса Heredoc (<< 'EOF') вместе с символом перенаправления (>) позволяет сразу сохранить введённый текст в файл до тех пор, пока не будет введён символ EOF.

cat « ‘EOF’ > heredoc_demo.txt
Line 1: Server Setup
Line 2: Firewall Config
EOF

Выполните команду cat heredoc_demo.txt, чтобы проверить полное содержимое файла, только что созданного с помощью Heredoc.
Вы увидите, что введённые строки Line 1: Server Setup и Line 2: Firewall Config успешно сохранены в файле и сразу выведены на экран.

cat heredoc_demo.txt

5. Ограничения cat при работе с большими файлами и связка с альтернативными командами (head, tail) через конвейер

Чтобы создать образец лог-файла для практики просмотра больших файлов, выполните команду seq 1 100 > large_log.txt.

seq 1 100 > large_log.txt

При выполнении команды head -n 5 large_log.txt на экран терминала выводятся только первые 5 строк указанного файла.
В отличие от команды cat, это удобно для быстрой проверки заголовка или начала файла без вывода всего содержимого большого файла.

head -n 5 large_log.txt

При выполнении команды tail -n 5 large_log.txt выводятся только последние 5 строк файла.
Это позволяет эффективно просматривать последние обновленные логи или записи внизу файла без необходимости открывать весь файл целиком.

tail -n 5 large_log.txt

Выполните команду cat large_log.txt | grep -E "(10|50|100)", чтобы отфильтровать и вывести только те строки, которые содержат указанные шаблоны 10, 50 и 100.
Связывание вывода cat с командой grep через символ конвейера (|) позволяет быстро искать строки с нужными ключевыми словами в больших файлах.

cat large_log.txt | grep -E “(10|50|100)”

До сих пор мы ознакомились с основами работы с командой Linux cat — от просмотра файлов до полезных советов по их объединению и созданию.
Надеемся, что эти рекомендации помогут вам создать еще более эффективную рабочую среду в терминале Linux.