Читаем Linux и UNIX: программирование в shell. Руководство разработчика. полностью

read surname

<p><strong>5.3. Команда cat</strong></p>

Команда cat довольно проста, но универсальна. Эту команду удобно применять как для отображения файла, так и для его создания, а также при отображении файлов, содержащих управляющие символы. Используя команду cat, следует учитывать, что процесс вывода не останавливается по достижении конца страницы — файл пролистывается до конца. Если необходимо просмотреть файл постранично, передайте вывод команды cat какой‑нибудь программе постраничной разбивки:

$ cat myfile | more

или

$ cat myfile | pg

Общий формат команды cat таков:

cat [опции] имя_файла1…имя_файла2…

Из опций команды cat в первую очередь заслуживает внимания опция -v, активизирующая режим отображения непечатаемых символов. Вывести файл myfile позволяет вот такая простая команда:

$ cat myfile

Для отображения сразу трех файлов — myfile1, myfile2 и myfile3 — нужно выполнить команду

$ cat myfile1 myfile2 myfile3

Чтобы сформировать файл bigfile, включающий содержимое файлов myfile1, myfile2 и myfile3, следует перенаправить выходной поток предыдущей команды в новый файл:

$ cat myfile1 myfile2 myfile3 >> bigfile

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

$ cat >> myfile

Это новый файл

$ pg myfile

Это новый файл

По завершении ввода данных нажмите [Ctrl+D].

Для просмотра управляющих символов в файле воспользуйтесь опцией -v. Следующая команда отображает содержимое файла, в котором встречаются символы (представлены как ^M):

$ cat -v life.tct

ERROR ON REC A$12^M ERROR ON REC AS31^M

<p><strong>5.4. Каналы</strong></p>

Каналом называется способ переадресации данных, при котором результаты работы одной команды передаются другой команде в виде входных данных. Канал организуется с помощью оператора |:

команда1 | команда2

В следующем примере команда ls формирует список всех файлов из текущего каталога. Этот список был бы выведен на экран, если бы не символ канала. Интерпретатор shell обнаруживает канал, перехватывает все выходные потоки команды, стоящей слева от оператора [, и направляет их команде, которая расположена справа от оператора. В данном случае утилита фильтрации grep отбирает в списке файл с именем quarter1.doc:

$ ls | grep quarter1.doc

quarter1.doc

Представим этот пример схематически:

$ lsКаналgrep quarter1.doc| Выходные данные команды ls

$ ls accounts.doc acc_LPSO.doc quarter1.doc

quarter1.doc quarter2.doc

При обработке строковых данных можно объединять, каналами такие мощные программы фильтрации, как потоковый редактор sed, редактор awk и утилита grep, создавая сложные критерии отбора информации. В показанной ниже командной строке команда who выводит информацию о пользователях, зарегистрированных в

данный момент в системе, а программа awk выбирает из каждой строки имя пользователя (первое поле) и идентификатор терминала (второе поле):

$ who | awk '{print $1"\t"$2}'

matthew pts/0 louise pts/1

Следующая командная строка служит для вывода списка всех смонтированных файловых систем. Команда df формирует расширенный список с указанием всевозможных статистических данных об использовании каждой файловой системы. Программа awk извлекает из этого списка только первый столбец с именами файловых систем, а команда grep -v удаляет заголовок этого столбца, оставляя только имена.

$ df | awk '{print $1}' | grep -v "Filesystem"

/dev/hda5 /dev/hda8 /dev/hda6 /dev/hdb5 /dev/hdb1 /dev/hda7 /dev/hda1

С помощью редактора sed можно удалить из полученного списка повторяющуюся подстроку /dev/, оставив только имя раздела. Вот как это делается:

$ df | awk '(print $1}' | grep -v "Filesystem" | sed s'/\/dev\///g'

hda5 hdа8 hda6 hdb6 hdb1 hda7 hda1

Команда s редактора sed предназначена для замены указанного шаблона (в данном случае \/dev\/; символы '/' имеют специальное назначение, поэтому защищены символами \) заданной строкой (в нашем случае это пустая строка). Флаг g означает, что замену нужно производить каждый раз, когда обнаружено совпадение, а не только первый раз.

В следующем примере команда sort сортирует строки текстового файла myfile, а результат посылается на принтер:

$ sort myfile | lp

<p><strong>5.5. Команда tee</strong></p>
Перейти на страницу:

Похожие книги

112 страниц про Париж. Опыт создания путеводителя (в помощь самостоятельным туристам)
112 страниц про Париж. Опыт создания путеводителя (в помощь самостоятельным туристам)

  По Парижу приятно гулять, бесцельно бродить, кружить по узким улочкам, отдыхать в маленьких кафе и в парках у фонтанов. Здесь есть все для любителей архитектуры, ценителей живописи, театралов, меломанов, гурманов, поклонников всевозможных развлечений. Париж притягивает, удивляет, очаровывает, постепенно приоткрывая тайны любознательному гостю, который теряется от сложности выбора: что же увидеть прямо сейчас, а что отложить на потом. Мои 112 страниц про Париж, надеюсь, помогут сделать этот выбор. Предложенные 7 прогулок по городу включают в себя не только известные всему миру достопримечательности, но и множество других, которые часто остаются за пределами стандартных туристических маршрутов.  

Елена Р Стамбулян , Елена Р. Стамбулян

Руководства / Путеводители / Словари и Энциклопедии
40+. Уход за телом
40+. Уход за телом

Женщина после 40 лет – настоящая богиня, умудренная опытом и оттого еще более прекрасная. Но чтобы надолго сохранить красоту и молодость, нужно постоянно собой заниматься: ухаживать за своим телом, руками и ногами, выполнять физические упражнения и соблюдать диету. Благодаря этой книге вы научитесь самостоятельно готовить омолаживающие, питательные, увлажняющие кремы и маски, а также скрабы и пилинги из натуральных продуктов; выполнять легкие и эффективные упражнения для стройной фигуры и профилактики варикозного расширения вен, делать массаж рук и ног, навсегда избавитесь от целлюлита и сможете легко ориентироваться в выборе омолаживающих процедур в СПА-салонах и хирургических операций в клиниках красоты. Правила здорового питания, популярные диеты и рецепты полезных блюд – в этой книге есть все, что поможет 40-летним женщинам всегда быть в форме.

Анастасия Витальевна Колпакова

Здоровье / Руководства / Здоровье и красота / Дом и досуг / Словари и Энциклопедии