Interested Article - Конвейер (Unix)
- 2021-02-01
- 1
Конвейер
(
англ.
pipeline
) в терминологии
операционных систем
семейства
Unix
— некоторое множество
процессов
, для которых выполнено следующее
перенаправление ввода-вывода
: то, что выводит на поток стандартного вывода предыдущий процесс, попадает в поток стандартного ввода следующего процесса. Запуск конвейера реализован с помощью системного вызова
pipe()
.
Код возврата конвейера равен коду возврата последней команды. В bash можно изменить это поведение, включив опцию pipefail:
set -o pipefail
после чего конвейер вернёт ноль, если все команды завершились удачно, или код первой из команд в конвейере, вернувшей не ноль.
Пример запуска конвейера:
$ ps aux | grep [k]de | gawk '{ print $2}'
Данная команда выведет номера процессов, в названии которых встречается подстрока « kde »
- 2021-02-01
- 1