cat - объединить и вывести содержимое файлов

cat [-benstuv] [ файл ... ]

Утилита cat последовательно читает файлы и пишет их в стандартный вывод. Аргументы "файл" обрабатываются в порядке их следования в командной строке. Если файл задан как дефис ("-") или отсутствует, cat производит чтение со стандартного ввода.

Если файл является UNIX сокетом, cat подключается к нему и читает из него, пока не будет получен EOF ( конец файла ). Это дополняет возможность привязки к UNIX-домену, доступную в inetd(8).

Программа cat поддерживает следующие опции:

-b
Нумеровать непустые выводимые строки, начиная с 1.
-e
Выводить непечатаемые символы (см. опцию -v), и выводить знак доллара ( "$" ) в конце каждой строки.
-n
Нумеровать выводимые строки, начиная с 1.
-s
Подавлять вывод нескольких пустых строк, следующих друг за другом, заменяя их на одну пустую строку.
-t
Выводить непечатаемые символы (см. опцию -v), и выводить символы табуляции в виде "^I".
Запретить буферизацию вывода.
-v
Выводить непечатаемые символы в читабельном виде. Управляющие символы типа control-X печатаются как ^X; символ delete (восьмеричное значение 0177) печатается как ^?. Не-ASCII символы (с ненулевым старшим битом) печатаются как M- ( meta ) с последующим символом, полученным из младших 7 битов.

СТАТУС ЗАВЕРШЕНИЯ
Утилита cat возвращает 0 в случае успешного завершения и >0 в случае возникновения ошибки.

ПРИМЕРЫ

cat файл1

выведет содержимое файла файл1 на стандартный вывод.

cat файл1 файл2 > файл3

содержимое файлов файл1 и файл2 будет последовательно записано в файл файл3, при этом файл файл3, если он существует, будет усечён. Обратитесь к странице справочника по используемой вами командной оболочке (например, sh(1)) для получения более подробной информации о перенаправлении ввода/вывода.

cat файл1 - файл2 - файл3

будет выведено содержимое файла файл1, затем данные из стандартного ввода, пока не будет получен символ EOF ( "^D" ), затем содержимое файла файл2, затем вновь будет читаться и выводиться содержимое стандартного ввода, и, наконец, будет выведено содержимое файла файл3. Заметьте, что если стандартный ввод является файлом, то второй дефис в командной строке не будет действовать, так как всё содержимое файла уже будет считано и выведено утилитой cat при обработке первого аргумента "".

СМОТРИТЕ ТАКЖЕ
head(1), more(1), pr(1), sh(1), tail(1), vis(1), zcat(1), setbuf(3)

ПРОБЛЕМЫ
Использование в команде cat файл1 файл2 > файл1' механизма перенаправления вывода командной оболочки приведёт к уничтожению исходных данных в файле файл1

Утилита cat не распознаёт мультибайтовые символы при включении опций -t или -v.