Ответ 1
Это символ трубы. Он разделяет две программы в командной строке (см. Pipelines
в руководстве bash
) и стандартный вывод первой программы (на LHS трубы ) подключен к стандартному входу второй программы (на RHS трубы).
Например:
who | wc -l
дает вам количество людей или сеансов, подключенных к вашему компьютеру (плюс один для строки заголовка от who
). Чтобы убрать строку заголовка:
who | sed 1d | wc -l
Вход в sed
происходит от who
, а выход sed
переходит в wc
.
Основной системный вызов pipe(2)
используется в сочетании с fork()
, dup2()
и exec*()
системные вызовы.