Logo

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

 

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

 

SKype: sharing_plus

 

621-626-628@mail.ru

 

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



U334459871111
Z163812692685
R219058712561

410011491012247

Голосование

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

Реклама от Google:

Гл. 7. Команды и оболочка 117
16.06.2012 00:20

Хотя в данном случае info выступает как отдельная команда, она, если заглянуть за кулисы, выполняет свою задачу путем использования двух нижележащих команд cat и Is. Это пример типичного свойства UNIX, которое проявляется, например, в следующем:

• каталог сам может содержать каталоги;

• дерево само может содержать деревья, и, если идти еще дальше, файловая система сама может содержать файловые системы.

Поэтому неудивительно, что команда сама может быть сделана из команд. Техника построения объектов из подобных объектов является одной из причин силы и изящества UNIX.

Читателям-программистам, наверное, будет интересно узнать, как программы оболочки отличаются от программ, которые они (читатели) могут написать, используя свои любимые языки программирования; поэтому мы скажем еще пару слов о выполнимых файлах.

К выполнимым файлам относятся или двоичные программы, которые были созданы с использованием какого-либо языка программирования (например, С — мы расскажем об этом в гл. 12), или программы оболочки. Первые имеют секретный маркер, заносимый в них «загрузчиком»,— вновь тема, которую мы обсудим в гл. 12. В данном случае файл info не содержит такого секретного маркера и поэтому считается программой оболочки. Когда вы набираете

info

UNIX просто воспринимает это как sh info

Переадресация ввода-вы вода для программ оболочки

Когда вы определяете свои собственные команды, они получают все свойства встроенных команд UNIX. В частности, можно переадресовать их ввод и (или) вывод, а также использовать их в качестве компонент конвейеров, например,

info >t
info | lpr

Стоит подробнее проанализировать первый пример. В данном случае мы осуществляем вложенное обращение к оболочке, чтобы выполнить команду info, и для такого вложенного вызова стандартным выводом будет файл t, а не терминал. Команды cat и Is внутри info, следовательно, направляют свой вывод в файл t. Если бы, однако, info содержала команду, которая

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