あるタスクの出力と、別のタスクの入力を接続する機能。
例えば、あるタスクの標準出力を、別のタスクの標準入力に振り向ける機能である。
ある処理対象を、次々と異なるプログラムで処理していくような場合、この方法がよく用いられている。
% cat infile | sort | more
上の例は、ファイルinfileの内容を出力し、それをソートし、最後にmoreで表示している。
MS-DOSの場合、シングルタスクOSであるため、一旦テンポラリファイルに出力され、次のタスクの入力時に読み込ませている。
UNIXは基本的にはマルチタスクOSなので、MS-DOSとは違い入力と出力が並行して行なわれる。バッファリングの分だけ遅延があるが、結果が即時に処理される。これは、単機能のモジュール化というUNIXの考え方に適った設計といえる。