編集者注:
->(…)
は一部のPOSIX 互換シェルの非標準シェル機能であるプロセス置換です: , , .
- この回答は、出力プロセス置換の出力をパイプライン経由で誤って送信します: .
- プロセス置換からの出力は予期せずインターリーブされ、 を除き、内部のコマンドが終了する前にパイプラインが終了する場合があります。bash
ksh
zsh
echo 123 | tee >(tr 1 a) | tr 1 b
zsh
>(…)
UNIX (または Mac) では、次のtee
コマンドを使用します。
$ echo 123 | tee >(tr 1 a) >(tr 1 b) >/dev/null
b23
a23
通常tee
、出力を複数のファイルにリダイレクトするために使用しますが、 >(...) を使用すると、別のプロセスにリダイレクトできます。したがって、一般的に、
$ proc1 | tee >(proc2) ... >(procN-1) >(procN) >/dev/null
あなたが望むことをします。
Windows では、組み込みのシェルに相当するものはないと思います。ただし、 Microsoft のWindows PowerShellにはtee
コマンドがあります。