Команда cat
Описание
Команда cat (от англ. concatenate — «объединить») используется для:
- Вывода содержимого текстовых файлов
- Объединения нескольких файлов
- Перенаправления вывода в другой файл или команду
Это одна из самых базовых и часто используемых утилит в терминале.
Синтаксис
cat [опции] [файл(ы)]
Примеры использования
1. Просмотр содержимого файла
cat файл.txt
Выведет содержимое файла
файл.txtна экран.
2. Объединение нескольких файлов
cat файл1.txt файл2.txt > объединённый_файл.txt
Создаст новый файл
объединённый_файл.txt, содержащий содержимое обоих файлов.
3. Создание нового файла
cat > новый_файл.txt
После этой команды вы можете вводить текст. Нажмите
Ctrl+D(на новой строке), чтобы завершить ввод и сохранить файл.
4. Добавление текста к существующему файлу
cat >> существующий_файл.txt
Текст будет добавлен в конец файла. Завершите ввод с помощью
Ctrl+D.
5. Передача вывода в другую команду
cat файл.txt | grep "ключевое_слово"
Ищет строки, содержащие
"ключевое_слово", в файлефайл.txt.
Полезные опции
| Опция | Описание |
|---|---|
-n, --number |
Нумерует все выходные строки |
-b, --number-nonblank |
Нумерует только непустые строки |
-E, --show-ends |
Показывает $ в конце каждой строки |
-T, --show-tabs |
Отображает табуляции как ^I |
-v, --show-nonprinting |
Показывает невидимые символы |
-s, --squeeze-blank |
Сжимает несколько пустых строк в одну |
-A, --show-all |
Эквивалентно -vET — показывает все невидимые символы и окончания строк |
Примеры с опциями
1. Нумерация всех строк
cat -n файл.txt
2. Нумерация только непустых строк
cat -b файл.txt
3. Отображение невидимых символов
cat -A файл.txt
4. Удаление лишних пустых строк
cat -s файл.txt
Полезные заметки
catработает только с текстовыми файлами. Для бинарных файлов лучше использовать другие утилиты.- Не рекомендуется использовать
catдля очень больших файлов — вместо этого используйтеless,head,tail. - Часто используется в скриптах для передачи данных между командами через пайпы (
|).
Альтернативы
| Утилита | Когда использовать |
|---|---|
less |
Для просмотра длинных файлов |
head / tail |
Для просмотра начала/конца файла |
nl |
Для нумерации строк (более гибкий, чем cat -n) |
tac |
То же, что cat, но выводит файл в обратном порядке |
bat |
Современная альтернатива cat с подсветкой синтаксиса и Git-интеграцией |
Пример работы
-
Создадим файл:
bash cat > пример.txt Это первая строка Это вторая строка -
Нажимаем
Ctrl+D, чтобы сохранить. -
Выводим содержимое:
bash cat пример.txtРезультат:Это первая строка Это вторая строка