[ Содержание ]Программа cat предназначена для объединения файлов.
cat [параметры] [файл]...
Каким образом при помощи cat можно объединять файлы мы посмотрим несколько позже, после того как изучим необходимый для понимания используемых технологий материал. Сейчас нас интересует одна из особенностей программы – просмотр содержимого небольших текстовых файлов.
При помощи программы рекомендуется просматривать только небольшие файлы, т.к. при просмотре большого файла вы увидите только его последние строки. Даже если пользоваться буфером терминала ( Для перемещения по буферу терминала используются комбинации клавиш Ctrl+PgUp и Ctrl+PgDn), некоторые файлы настолько большие, что не помещаются в него целиком и будут видны только последние строки файла.
Для того, что бы посмотреть содержимое файла /etc/hosts, необходимо выполнить следующую команду:
$ cat /etc/hosts
# For loopbacking.
127.0.0.1 localhost
10.10.107.20 master.class.unix master
# End of hosts.
$
У программы cat есть много других параметров. Мы рассмотрим только три:
–b-- при выводе файла программа нумерует строки.–E-- в конце строки выводится символ$.–T-- вместо символа табуляции выводятся символы^I.
**Внимание!**Вы должны запомнить, что cat, как и большинство рассматриваемых программ, не будет изменять содержимое файла. То есть файл – это источник данных, а результат работы программы выводится только на экран терминала. Явное обозначение конца строки -- это серьезная проблема в мире UNIX. Иногда встречаются программы некорректно обрабатывающие свои конфигурационные файлы, параметры в файле написаны правильно, а программа выдает сообщение об ошибке в строке. Проблема в лишних пробелах, которые могут присутствовать в конце строки ( привет от индусских кодеров). Такие пробелы обнаружить достаточно трудно, ведь этот символ никак не отображается в большинстве редакторов и программ показывающих содержимое текстовых файлов. В обнаружении лишних пробелов в конце строки поможет программа cat.
$ cat -E /etc/hosts
# For loopback# For loopbacking.
127.0.0.1 localhost$
10.10.107.20 master.class.unix master$
$
# End of hosts.$
$
Если после последнего параметра в конце строки перед символом $ есть пробелы, они будут видны.
Параметр –T помогает обнаружить, где в тексте стоят символы табуляции. Например, в Linux в конфигурационном файле системы отвечающей за журнальную регистрацию (syslog) поля в строке отделяются символом табуляции и только им. Если среди табуляций будет введен хотя бы один пробел, программа будет выдавать сообщение об ошибке. Табуляции, как и пробелы, тоже никак не отображаются в редакторах. Если пропустить такой конфигурационный файл через cat с параметром –T, сразу будут видны лишние пробелы.[ Содержание ]
