Программирование командных оболочек в Unix, Linux и OS X [Стефан Кочан] (pdf) читать постранично
Книга в формате pdf! Изображения и текст могут не отображаться!
[Настройки текста] [Cбросить фильтры]
- 1
- 2
- 3
- . . .
- последняя (73) »
Программирование
командных
оболочек
в Unix, Linux и OS Х
Программирование
командных оболочек
в Unix, Linux и OS Х
4-е издание
Programming in
Unix, Linux and OS Х
Shell
Fourth Edition
Stephen G. Kochen
Patrick Wood
•
......
Addison
Wes\ey
800 East 96th Street.
lndianapolis. lndiana 46240
Программирование
командных оболочек
в Unix, Linux и OS Х
4-е издание
Стефан Кочан и Патрик Вуд
Москва
•
Санкт-Петербург
2017
•
Киев
ББК 32.973.26-018.2.75
К75
УДК 681.3.07
Компьютерное издательство "Диалектика"
Зав. редакцией С. Н. Тригуб
Перевод с английского и редакция И.В. Берштейна
По общим вопросам обращайтесь в издательство "Диалектика" по адресу:
info@dialektika.com, http://www.dialektika.com
Кочан,
Стефан, Вуд, Патрик.
Программирование командных оболочек в Unix, Linux и OS Х, 4-е изд.: Пер. с англ. СпБ.: ООО ''Альфа-книга': 2017. - 432 с.: ил. - Парал. тит. англ.
К75
ISBN
978-5-9909445-3-4
(рус.)
ББК 32.973.26-018.2.75
Все названия 11рограммных продуктов являются зарегистрирова1111ыми торювыми марками соответ
ствующих фирм.
1 lикакая
•1асть настоящего издания ни в каких целях не может быть 11оспроизведена в какой бы то 11и
бь1110 форме и какими бы то 11и было средствами. будь то злектроrшыс и11и мсха11и•1еские, вк11ю•1ан фотоко·
пирование и запись на магнитный носитель, если на зто нет пис1.мен11оt·о разреше11ин издатс11ьства Addison
Wesley Publishiпg Company. lnc .
Authorized lranslation from the English laпguage cdition publishcd hy Addison-Wcsley l'uhlishiпg Company.
lnc. Copyright (cJ 2017 hy Pearsoп Education, !пс.
All rights rcscrved. No part of this hook shall hc reproduccd, stored i11 а retrieval system. or lransmittcd hy
а11у meaпs, electronic, mechanical, photocopyiпg. recordiпg. or othcrwise, without writtcn permission from thc
publisher.
Russian language editior1 is puhlished hy Williams Puhlishing l louse accordiпg
lo thc Agrecmcnt with R&I
E11terprist·s lnternationa\, Copyright CCJ 2017.
Научно-популярное издание
Стефан Кочан, Патрик Вуд
Программирование командных оболочек в Unix, Linux и OS Х
4-еиздание
Литературный редактор
Верстка
Художественный редактор
Корректор
И.А. Попова
Л.В. Чернокозинская
В.Г. Павлютин
Л.А. Гордиенко
llодписано в пс•rать 12.07.2017. Формат 70х100/16.
Гар11итура Tirnes. Пе•rать офсет11ая.
Усл. 11е•1. л. 34,8. У •1 .-юд. л. 17.8.
Тираж 300 эк з. Заказ
№ 4866.
Отпе•1ата1ю в АО «llервая Образцовая типоr·рафия»
Филиал «Чеховский llсчатный Лвор»
142300, Московская об11асть, г. Чехов, ул. Полиграфистов, д.1
ООО "Альфа-книга", 195027, Санкт-1 lеп:рбург, Магнитогорская ул" д. 30
ISBN 978-5-9909445-3-4
(рус.)
> для переадресаци и (л юбоп ытно, что для переадресаци и вво
да имеется еще одна последовательность знаков, для переадресаци и вывода и интер
претирует следующее слово в командной строке как имя файла, в который пере
адресовывается резуп ьтат выполнения команды e cho (в дан ном случае - это
файл remi nde r). Если файл remi nde r существует и доступен для записи, то
прежнее его содержимое перезаписывается. А если этот файл или его каталог не
доступен для зап иси, то оболочка выдаст сообщение об ошибке.
Прежде чем начать выполнение требуемой программы, оболоч ка переадресо
вывает стандартный вывод из программы в указанный файл. Практически в каж
дом случае программе вообще неизвестно, что вывод результатов ее выполнения
переадресовывается. Она просто направляет результаты своего выполнен ия в
стандартный вывод, т.е. как обычно, на терминал, даже не подозревая, что обо
лочка переадресовывает эти данные в файл.
Рассмотрим еще оди н пример применения двух практически оди наковых команд:
$ wc - 1 users
5 users
$ wc - 1 < users
5
$
В первом случае оболоч ка определяет в ходе си нтакси ческого анализа команд
ной строки, что выполняемая программа носит имя wc, и передает ей два аргу
мента: -1 и u s e r s (рис. 2. 1 2).
Р ис. 2 . 1 2 . П роцесс в ы пол нения кома нды wc - 1 users
Когда команда wc начинает свое выполнение, она обнаруживает, что ей пере
даны два аргумента. Первы й аргумент, - 1 , предп исывает ей подсчитать количе
ство строк, а второй аргумент обозначает имя файла, в котором подсчитываются
строки. Таким образом, команда wc открывает файл u s e r s , подсчитывает в нем
коли чество строк и вы водит получен ный подсчет вместе с именем файла.
А во втором случае команда wc действует несколько иначе. Просматривая ко
мандную строку, оболочка обнаруживает символ < для переадресации ввода. По
этому слово, которое следует после этого символа в командной строке, интерпре
тируется как имя файла, из которого переадресовывается ввод. Проанализировав
выражение < u s e r s из командной строки , оболочка приступает к выполнению
команды wc, переадресовывая ей стандартный ввод из файла users и передавая
ей только оди н аргумент - 1 (рис. 2. 1 3).
70
Гл а в а 2. Назначение оболочки
Р ис. 2.13. П роцесс в ып ол нения кома нды
wc
-
1 <
users
Когда команда wc начинает свое выполнение, она на этот раз замечает, что ей
передан только один аргумент -1. А поскольку имя файла не указано, то к� манда
wc решает, что строки, количество которых следует
- 1
- 2
- 3
- . . .
- последняя (73) »
Последние комментарии
3 часов 16 минут назад
3 часов 18 минут назад
16 часов 1 минута назад
18 часов 49 минут назад
2 дней 5 часов назад
2 дней 14 часов назад