При закрытии подписчики были переданы в рассылку "Интернет: маркетинг, реклама, торговля" на которую и рекомендуем вам подписаться.
Вы можете найти рассылки сходной тематики в Каталоге рассылок.
Служба Рассылок Subscribe.Ru |
Уважаемые подписчики! Этот выпуск - второй в серии, посвященной командному интерпретатору bash. Перевод сделан 6-7 апреля по справочному руководству ОС Solaris 8.
Поскольку по правилам оформления рассылок в них не должно быть "висящих" гиперссылок href, не все перекрестные ссылки в выпусках, посвященных bash, оформлены как гиперссылки. Когда перевод будет закончен, вы сможете скачать с сайта рассылки всю страницу в целом, со всеми необходимыми перекрестными и внешними ссылками.
Зарезервированными являются слова, имеющие специальное значение для командного интерпретатора. Следующие слова распознаются как зарезервированные, если не замаскированы и являются либо первым словом простой команды (см. "СИНТАКСИС КОМАНД" ниже), либо третьим словом команды case или for:
! case do done elif else esac fi for function if in select then until while { } time [[ ]]Простая команда - это завершающаяся управляющим оператором последовательность необязательных присваиваний значений переменным, после которых идут слова, разделенные пробелами, и перенаправления потоков. Первое слово задает команду, которую надо выполнить. Оставшиеся слова передаются как аргументы вызванной команде.
Возвращаемым значением простой команды является ее статус выхода, или 128+n, если команда завершена сигналом n.
Конвейер - это последовательность одной или более команд, разделенных символом |. Конвейер имеет следующий формат:
Стандартный выходной поток команды связывается со стандартным входным потоком команды2. Эта связь выполняется раньше, чем любые перенаправления, задаваемые командой (см. "ПЕРЕНАПРАВЛЕНИЕ" ниже).
Если перед конвейером указано зарезервированное слово !, статус выхода такого конвейера является логическим отрицанием статуса выхода последней команды. В противном случае, статус выхода конвейера совпадает со статусом выхода последней команды. Прежде, чем возвращать значение, командный интерпретатор ждет завершения всех команд в конвейере.
Если перед конвейером идет зарезервированное слово time, после завершения конвейера выдается общее, пользовательское и системное время, потраченное на его выполнение. Опция -p изменяет формат вывода на задаваемый стандартом POSIX. Переменная TIMEFORMAT может задавать строку формата выдачи информации о времени; см. описание переменной TIMEFORMAT в разделе "Переменные командного интерпретатора" ниже.
Каждая команда в конвейере выполняется как отдельный процесс (т.е. в порожденном интерпретаторе).
Список - это последовательность одного или более конвейеров, разделенных одним из операторов ;, &, && или ||, и не обязательно завершающаяся одним из операторов ;, & или <перевод строки>.
Из этих операторов списка && и || имеют равный приоритет, причем больший, чем ; и &, тоже имеющие равный приоритет.
Если команда завершается управляющим оператором &, интерпретатор выполняет команду в фоновом режиме в порожденном интерпретаторе. Командный интерпретатор не ждет завершения команды, а статус выхода в этом случае - 0. Команды, разделенные ; выполняются последовательно; командный интерпретатор ждет поочередно завершения каждой из команд. Статус возврата списка в этом случае совпадает со статусом возврата последней выполненной команды.
Управляющие операторы && и || обозначают, соответственно, И-списки и ИЛИ-списки. И-список имеет вид
Команда2 выполняется только и если только команда вернула статус выхода ноль.
ИЛИ-список имеет вид
Команда2 выполняется только и если только команда вернула ненулевой статус выхода. И- и ИЛИ-списки возвращают статус последней команды, выполненной в списке.
Составными называют следующие команды:
При использовании операторов == и != строка справа оператора считается образцом и сопоставляется по правилам, описанным ниже в подразделе "Сопоставление с образцом". Возвращается значение 0 если строка, соответственно, сопоставляется и не сопоставляется с образцом, и 1 в противном случае. Любая часть образца может быть взята в кавычки, чтобы сопоставление с ней шло буквально.
Выражения можно комбинировать с помощью следующих операторов, перечисленных в порядке снижения приоритета:
man pkgrm(1M) по UnixWare 2.03. Выпуск ожидается в среду, 10 апреля.
С наилучшими пожеланиями,
В.К.
http://subscribe.ru/
E-mail: ask@subscribe.ru |
Отписаться
Убрать рекламу |
В избранное | ||