Команда cat в Linux
cat — одна из наиболее часто используемых команд в Linux. Она считывает данные из файлов и выводит их содержимое. Это самый простой способ отображения содержимого файла в командной строке.
Синтаксис
Ее можно использовать для отображения текстовых файлов, копирования текстовых файлов в новый документ, присоединения содержимого текстового файла в конце другого текстового файла для их объединения.
Отображение текстовых файлов
Если файл слишком длинный, он пролистается, и вы увидите только последний экран. При необходимости просмотреть документ постранично или прокручивать его вперёд и назад можно воспользоваться такими средствами просмотра как pg, more или less.
Когда указано несколько файлов, cat будет выводить их последовательно, объединяя содержимое в потоке стандартного вывода. Поэтому следующая команда выведет содержимое двух текстовых файлов, как если бы они были одним:
Копирование текстового файла
Обычно копирование осуществляется командой cp, но для копирования текстовых файлов вы можете аналогичным образом использовать команду cat. cat отправляет результат в stdout (стандартный поток вывода), обычно это экран терминала. Однако, можно перенаправить результат в файл при помощи символа перенаправления “>”.
считает содержимое mytext.txt и отправить его в стандартный поток вывода, но вместо отображения текста оболочка перенаправит результат в файл newfile.txt. Если этот файл не существует, он будет создан. Если он будет же существует, то будет перезаписантс потерей предыдущего содержимого, поэтому будьте осторожны.
Аналогично можно объединять несколько файлов в один. Например, команда
считает содержимое mytext.txt и mytext2.txt и запишет объединенный текст в newfile.txt. При отсутствии файла он будет создан, при наличии — перезаписан.
Присоединение содержимого текстового файла в конец другого текстового файла
Вместо перезаписи файла можно присоединить текст файла-источника к другому файлу при помощи оператора перенаправления «>>».
Например, команда:
Прочтет содержимое mytext.txt и запишет его в конец файла another-text-file.txt. Если этот файл не существует, он будет создан, и содержимое mytext.txt будет записано в новый файл.
Это работает также для нескольких файлов. Следующая команда последовательно запишет содержимое mytext.txt и mytext2.txt в конец файла another-text-file.txt:
Добавление стандартного ввода в вывод cat
Если в качестве имени файла задать дефис («-«), cat осуществляет считывание из стандартного потока ввода. Например, если у вас есть файл list.txt со следующим текстом:
вы можете воспользоваться командой echo для вывода текста, направить этот текст команде cat и указать ей объединить его с содержимым файла:
На выходе получим следующий текст:
Опции
Данные опции доступны для GNU cat, стандартной для большинства дистрибутивов Linux. Для уточнения опций, доступных конкретно в вашей системе, обратитесь к руководству.
-n, —number — выводить номер каждой строки результата.
-b, —number-nonblank — выводить номер каждой строки результата, кроме пустых. Эта опция отменяет -n.
-E, —show-ends — отображать «$» в конце каждой строки.
-s, —squeeze-blank — исключать из вывода повторяющиеся пустые строки.
-T, —show-tabs — показывать символы табуляции как ^I.
-v, —show-nonprinting — показывать непечатаемые символы, кроме табуляции и конца строки.
-t — показывать непечатаемые символы, кроме конца строки.
-e — показывать непечатаемые символы, кроме табуляции.
-A, —show-all — показывать все непечатаемые символы.
—help — вывести справку и выйти.
—version — вывести информацию о версии и выйти.
Заключение
cat — простой, но очень полезный инструмент для работы с данными в текстовых файлах, системных логах, файлах конфигурации и любыми другими читаемыми для человека данными.
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Команда cat Linux
Команда cat — это одна из самых часто используемых команд Linux. Она часто применяется опытными пользователями во время работы с терминалом. С помощью этой команды можно очень просто посмотреть содержимое небольшого файла, склеить несколько файлов и многое другое.
Несмотря на то что утилита очень проста и решает только одну задачу в лучшем стиле Unix, она будет очень полезной. А знать о ее дополнительных возможностях вам точно не помешает. В этой статье будет рассмотрена команда cat linux, ее синтаксис, опции и возможности.
Команда cat
Название команды — это сокращения от слова catenate. По сути, задача команды cat очень проста — она читает данные из файла или стандартного ввода и выводит их на экран. Это все, чем занимается утилита. Но с помощью ее опций и операторов перенаправления вывода можно сделать очень многое. Сначала рассмотрим синтаксис утилиты:
$ cat опции файл1 файл2 .
Вы можете передать утилите несколько файлов и тогда их содержимое будет выведено поочередно, без разделителей. Опции позволяют очень сильно видоизменить вывод и сделать именно то, что вам нужно. Рассмотрим основные опции:
- -b — нумеровать только непустые строки;
- -E — показывать символ $ в конце каждой строки;
- -n — нумеровать все строки;
- -s — удалять пустые повторяющиеся строки;
- -T — отображать табуляции в виде ^I;
- -h — отобразить справку;
- -v — версия утилиты.
Это было все описание linux cat, которое вам следует знать, далее рассмотрим примеры cat linux.
Использование cat в Linux
Самое простое и очевидное действие, где используется команда cat linux — это просмотр содержимого файла, например:
Команда просто выведет все, что есть в файле. Чтобы вывести несколько файлов достаточно просто передать их в параметрах:
Как вы знаете, в большинстве команд Linux стандартный поток ввода можно обозначить с помощью символа «-«. Поэтому мы можем комбинировать вывод текста из файла, а также стандартного ввода:
Теперь перейдем к примерам с использованием ранее рассмотренных опций, чтобы нумеровать только непустые строки используйте:
Также вы можете нумеровать все строки в файле:
Опция -s позволяет удалить повторяющиеся пустые строки:
А с помощью -E можно сообщить утилите, что нужно отображать символ $ в конце каждой строки:
Если вы не передадите никакого файла в параметрах утилите, то она будет пытаться читать данные из стандартного ввода:
Для завершения записи нажмите Ctrl+D. Таким образом можно получить очень примитивный текстовый редактор — прочитаем ввод и перенаправим его вместо вывода на экран в файл:
cat > file2
$ cat file2
Возможность объединения нескольких файлов не была бы настолько полезна, если бы нельзя было записать все в один:
cat file1 file2 > file3
$ cat file3
Вот, собственно, и все возможности команды cat, которые могут быть полезны для вас.
Выводы
В этой статье мы рассмотрели что представляет из себя команда cat linux и как ею пользоваться. Надеюсь, эта информация была полезной для вас. Если у вас остались вопросы, спрашивайте в комментариях!

cat в Linux – всё что нужно знать
90% книг написанных про Linux начинают знакомство с командной строкой с cat . По статистике (на которую все ссылаются, но которую ни кто не видел), cat является самой часто употребляемой командой в Linux. Так что же делает это чудо-команда?
cat образовано от английского concatenate (объединять), т.е. логично предположить команда предназначена для объединения чего то с чем, например нескольких файлов. Но чаще всего cat используют для создания файлов и для вывода содержимого файла непосредственно в консоль. Давайте разберем все возможности этой команды подробнее.
Создание нового файла с помощью cat
С помощью cat и символа > мы перенаправили стандартный вывод в файл new_file. Для завершения заполнения файла данными перейдите на новую строку и нажмите Ctrl+D .
Просмотр файлов с помощью cat в Linux
Для просмотра файла просто наберите:
#cat
Можно вывести с номерами строк:
Можно просмотреть содержимое нескольких файлов.
] # cat -n new_file old_file
Обратите внимание, что содержимое выводится единым массивом данных, что хорошо видно по тому, что содержание второго файла вывелось строкой под номером 4 – нумерация не началась заново при выводе этого файла. Т.е. cat , как это и заложено в ее названии, склеила файлы.
Просмотр больших файлов с помощью cat
Типичная рекомендация – если файл не влезает в экран консоли использовать cat в сочетании с less или more :