"Рас Сэйдж. Приемы профессиональной работы в UNIX" - читать интересную книгу автора

тальными средствами - это возможность соединения команд с программными
каналами и управление потоком данных с помощью переадресации. Вероят-
но, вы уже встречались с подобными особенностями в вашей собственной
работе с UNIX и эффективно их использовали. Возможно, вы еще не осоз-
нали, что соединение рекурсивного поиска, предоставляемого некоторыми
стандартными командами, со специфическими функциями, предоставляемыми
другими командами, позволяет нам создать команды, которые автомати-
чески обходят обширные файловые деревья и извлекают нужную информацию.
(В следующей главе мы выйдем за пределы распечатки и отображения ин-
формации на экран и научимся работать с файлами так, что мы сможем ко-
пировать, перемещать и восстанавливать их по мере надобности.)
Для удобства мы сгруппируем инструментальные средства в два раз-
дела: поиск файлов и распечатка файловой информации. Имеет смысл
представлять их в таком порядке, так как вы сначала должны найти файл,
чтобы потом с ним работать.

ПОИСК ФАЙЛОВ

Этот раздел посвящен поиску файлов, где бы они ни находились, вы-
воду на экран выбранной информации и поиску символьных строк внутри
файлов.
Первая программа, tree, обходит все файловое дерево и печатает
имена всех файлов в формате визуального дерева. Она рекурсивно спуска-
ется в каждый каталог и находит все его файлы, обеспечивая тем самым
глобальный осмотр файловых областей и их вложенной по глубине структу-
ры.
Другое инструментальное средство - это thead. Thead печатает
несколько первых строк текстовых файлов, которые находятся в данном
сегменте файлового дерева. Просматривая заголовок, т.е. первые
несколько строк файла, вы можете получить достаточно информации, чтобы
идентифицировать содержимое файла. При вызове thead вы можете явно за-
дать каталог либо передать команде thead по конвейеру список полных
имен файлов. Это делает команду thead фильтром - особым видом команд
системы UNIX, который мы обсудим позже.
Следующее инструментальное средство - tgrep. Как следует из наз-
вания, это еще одна команда, связанная с файловым деревом, которая
использует утилиту grep. Tgrep ищет символьные строки в каждом файле,
который находится в данном сегменте файлового дерева. Tgrep также яв-
ляется фильтром, так что имена файлов можно передавать ей по конвейе-
ру.
В нашем последнем проекте в этом разделе мы обратимся к использо-
ванию каталогов как средства "навигации". Сначала мы опишем основной
алгоритм для утилиты, которая для каждого файла из заданного списка
файлов проверяет, находится ли этот файл в каком-либо каталоге по ука-
занному маршруту поиска. Затем мы построим paths - утилиту, которая
дополняет функцию поиска полезными опциями.

РАСПЕЧАТКА ФАЙЛОВОЙ ИНФОРМАЦИИ

Этот раздел знакомит вас с инструментальными средствами, предназ-