Logo

Служба поддержки:

 

ICQ: 621-626-628 ICQ: 621-626-628

 

SKype: sharing_plus

 

621-626-628@mail.ru

 

Реквизиты оплаты:



U334459871111
Z163812692685
R219058712561

410011491012247

Голосование

Оцените работу сервера
 

Реклама от Google:

98 Часть II. Приложение идеи
14.06.2012 02:50

Первый аргумент команды grep (не считая в данный момент опций), который служит образцом для поиска, должен быть задан всегда. Поэтому аргумент kill не интерпретируется как имя файла, даже если у нас оказался бы файл с таким же именем.

Если бы, однако, аргумент kill был необязательным, то возникла бы проблема двусмысленности. Более того, такой необязательный аргумент не может быть представлен одиночной литерой и поэтому не может быть задан непосредственно через механизм опций. В UNIX нет единого соглашения для разрешения этой двусмысленности. Однако наиболее популярный способ — это использовать механизм опций для указания наличия далее определенных аргументов.

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

  • rm conceptualize /usr/crass/document

то эта новая команда rm проверит, содержит ли файл document в личном каталоге пользователя crass слово conceptualize, и если да, то не только уничтожает этот порочный файл, но также уничтожает все другие файлы в личном каталоге crass — независимо от установленных для них полномочий. Хорошо бы еще, чтобы эта воображаемая команда rm изменяла пароль пользователя crass на случайную комбинацию, так чтобы он уже никогда больше не мог войти в систему.

В данный момент эта команда rm имеет один недостаток: ее синтаксис двусмысленный, поскольку аргумент вредное слово — необязательный. Поэтому неясно, является лп conceptualize именем файла или вредным словом. Чтобы разрешить эту двусмысленность, представим синтаксис команды в виде

  • rm —h conceptualize /use/crass/document

Опция —h указывает, что следующим аргументом является вредное слово, а не имя файла.

(Заключительная мысль по этому поводу: теперь эта книга содержит слово conceptualize — оно встречается даже несколько раз. Нам следует быть более осторожными, когда осуществятся наши мечты о новой команде rm, а также когда будет реализована новая команда spell.)

 
eskisehirbayanlar.com eskisehirescortlar.net bursaescorttr.com bursadaescortlar.org antalyaescort.pw