Приемы профессиональной работы в UNIX


ОПИСАНИЕ - часть 2


A=/dev/fd048ds9 B=/dev/fd148ds9 C=/dev/hd0d D=/dev/hd1d X=/dev/fd096ds15 Y=/dev/fd196ds15

Как вы видите, маршрутные имена - это обычные имена устройств и ничего больше.

В качестве основного средства выполнения работы dosflp использует команду doscp. Это утилита способна понимать формат файловой системы DOS. Dosflp передает ей обозначение устройства и другие опции посредством переменных командного процессора. Например, ключ "-dB:" меняет устройство на B вместо принятого по умолчанию устройства A.

Если выражения прямого указания типа файлов не соответствуют тому, что вам нужно, вы можете определить свои собственные выражения сопоставления, используя ключ -e. Напомним, что выражение должно соответствовать синтаксису команды grep. Если вы хотите освежить свою память, посмотрите grep(1) в руководстве по AT&T UNIX или grep(C) в руководстве по XENIX. Для получения полной информации о синтаксисе посмотрите ed(1). Этот синтаксис является основой большинства команд, работающих с регулярными выражениями, таких как sed и grep.

Например, если вы используете выражение "*test*", выражение для grep должно иметь вид ".*test.*". Его можно слегка изменить в зависимости от того, что вы желаете иметь с каждой стороны цепочки test. В данном случае синтаксис указывает все символы (.*), за которыми следует цепочка t-e-s-t, а затем любая цепочка символов (.*). В этом случае ключ имел бы вид "-e.\*test.\*". Это кажется немного странным, но это соответствует синтаксису. (Двойные кавычки не являются частью команды.)Символ обратной косой черты (\) используется для экранирования звездочка. Если вы не экранируете ее, командный процессор соотнесет ее с именами всех файлов вашего текущего каталога, чего вы не желаете. Экранирование ее позволит, чтобы нужный символ был передан dosflp, для использования ее в grep-последовательности.

Ключ -h - это еще один из ключей прямого указания. Давайте вкратце рассмотрим его синтаксис внутри dosflp. Это ".*\.h$", и он указывает любой символ, за которым стоит одно или несколько вхождений любого символа (.*), литеральная точка (.\), символа h и вслед за ним конец строки (h$). Вы могли бы указать то же самое, используя ключ -e, но -h делает это гораздо легче. Ключ -l изменяет основное действие команды dosflp. Вместо копирования файлов он выдает список файлов. Это делается путем выполнения различных команд вида dosxx, в данном случае dosdir. Ключ выдачи списка полезен в dosflp, потому что вы можете получить список как информацию к решению о том, что делать дальше, и вам нет необходимости помнить команду dosdir.

Ключ -r также изменяет основную операцию команды dosflp. В этом случае файлы удаляются, а не копируются. Если вы указали этот ключ, выдается сообщение, которое просит вас подтвердить, что вы хотите удалить указанные файлы. Вы можете просто ответить "n", и запретить удаление, если вы ввели этот опцию случайно. Напомним, что удаленные файлы или файлы, включенные в список (в случае ключа -l), выбраны выражением grep, которое жестко запрограммировано или указано пользователем. По умолчанию выбираются ВСЕ файлы. Для ключа -r это соответствует тому, что сказать "rm *".

Последний ключ, -s, обеспечивает возможность доступа к файлам, которые размещены внутри подкаталога на гибком диске DOS. Если вы обращаетесь только к имени устройства, по умолчанию ключ -s относится к каталогу самого верхнего уровня на гибком диске. Если нужный вам файл находится в подкаталоге, вы должны использовать определенную нотацию, чтобы попасть в него. Одно из различий между XENIX и DOS заключается в символе, используемом для разделения элементов маршрутного имени. XENIX использует обычную запись в стиле UNIX - /x/y/z. В DOS применяется символ "обратная косая черта", т.е. \x\y\z. Но если вы хотите использовать команды XENIX на гибком диске DOS, вы должны применять обычную запись XENIX, a:/x/y/z. Это не совсем понятно, но правильно.

По умолчанию, dosflp копирует файлы с гибкого диска в ваш текущий каталог на жестком диске. Если вы измените операцию на выдачу списка или удаление, эта операция будет произведена на гибком диске.




Начало  Назад  Вперед



Книжный магазин