Bash - командный интерпретатор GNU Bourne


Конвейеры


Конвейер - это последовательность одной или более команд, разделенных символом |. Конвейер имеет следующий формат:

[time [-p]] [ ! ] команда [ | команда2 ... ]

Стандартный выходной поток команды связывается со стандартным входным потоком команды2. Эта связь выполняется раньше, чем любые перенаправления, задаваемые командой (см. ниже).

Если перед конвейером указано зарезервированное слово !, статус выхода такого конвейера является логическим отрицанием статуса выхода последней команды. В противном случае, статус выхода конвейера совпадает со статусом выхода последней команды. Прежде, чем возвращать значение, командный интерпретатор ждет завершения всех команд в конвейере.

Если перед конвейером идет зарезервированное слово time, после завершения конвейера выдается общее, пользовательское и системное время, потраченное на его выполнение. Опция изменяет формат вывода на задаваемый стандартом POSIX. Переменная TIMEFORMAT может задавать строку формата выдачи информации о времени; см. описание переменной TIMEFORMAT в разделе ниже.

Каждая команда в конвейере выполняется как отдельный процесс (т.е. в порожденном интерпретаторе).



Содержание раздела