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

ВВЕДЕНИЕ

В главе 1 был представлен обзор общей структуры системы UNIX и
показано, как взаимодействуют ее различные части. Это похоже на введе-
ние в географию, когда на глобусе показывают континенты и крупные вод-
ные пространства. Такая информация, хотя и является хорошим фундамен-
том для общих знаний, вряд ли поможет найти наилучший путь из
Сан-Франциско в Лос-Анжелес. Необходим следующий уровень детализации:
названия поселений, дорог, развилок, улиц, адресов.
Файловая система UNIX похожа на континент со множеством городов
и, действительно, с адресами внутри городов. Каталоги и различные
уровни подкаталогов можно сравнить с маршрутами между различными пунк-
тами назначения, названия файлов - с адресами. Большое число путей и
мест назначения может выглядеть пугающе, но благодаря регулярности и
логичности, файловая система UNIX позволяет вам легко перемещаться
из одного места в другое, если вы знаете несколько основополагающих
принципов.
Будучи пользователями UNIX, все мы научились пользоваться основ-
ными командами файловой информации, как, например, ls с различными оп-
циями. Мы знаем, как перемещаться между каталогами и копировать или
перемещать файлы. Тем не менее, находить нужную информацию о файлах из
всей массы информации не так-то легко. Нам необходимо создать инстру-
ментальные средства, которые используют древовидную структуру файлов в
UNIX, чтобы находить то, что мы ищем, и, соответственно, выводить ин-
формацию о файлах на экран, печатать листинги содержимого файлов и
т.д.
Эта глава знакомит с инструментальными средствами, которые облег-
чают задачу поиска и доступа к файлам. Доступ к файлам может быть
обеспечен различными способами, поэтому техника и стиль меняются от
одного командного файла к другому. Например, в некоторых случаях вам
нужно найти имена всех файлов в данном сегменте файлового дерева, в
других случаях вас будут интересовать файлы только заданного типа:
текстовые файлы вообще или исходные файлы на языке Си в частности.

КОМБИНИРОВАНИЕ ПРОДУКТИВНЫХ ИДЕЙ

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