ウィキペディアによると、「プロセス置換は、通常はファイルに出力される出力をキャプチャして、プロセスの入力にリダイレクトするためにも使用できます。」( http://en.wikipedia.org/wiki/Process_substitution )。
ということで、私なりの言い方をすれば、プロセス置換で、コマンドAの出力をコマンドBの入力として使えるということです。
したがって、これが真実であり、私がこれを行う場合:
echo "test" >(wc)
次に、次の結果が得られることを期待する必要があります。
1 1 5
上記のコマンドの私の理解は次のようになっているためです。
$echo "test" > tmp
$wc tmp
1 1 5 tmp
ただし、プロセス置換で tmp ファイルを作成しません。
しかし、代わりに次の出力が得られます。
test /dev/fd/63
これは明らかに、私のメンタル モデルが正しくないことを示しています。どこが間違っていますか?
<(コマンド)はわかりました。例えば
$diff <(head file1) <(head file2)
完全に理にかなっています。>(コマンド)ではありません。