私はfooとbarという2つのコマンドがあるとします。コマンドラインの非同期パイプ
fooの出力がbarの入力に「リダイレクト」されるように両方を実行したいとします。しかし、それだけではなく、fooの出力ストリームに書き込まれた各バイトを、バーの入力ストリームに直接/即座に書き込むようにしたいと考えています。バーは、その入力ストリームの読み込みを開始する前に
foo | bar
はその後、fooは/終了を終了する必要があります:私はコマンドを使用している場合
。 fooが出力ストリームを書き込むのと同時にbarが入力ストリームの読み込みを開始します。
Thisここで、私が正しく理解すると、パイプでバッファリングされたバイト数に制限があり、パイプが満たされたときに、パイプがバーの入力ストリームに「フラッシュされる」ことがあります。何とか「1」に減らすことができますか?
次のコマンドは、
foo
の出力をバッファリングしません。両方のプログラムをコントロールできますか? 'bar.exe'だけを制御できれば、何もできないのではないかと恐れています。 –unix [link](http://vincebuffalo.org/blog/2013/08/08/using-names-pipes-and-process-substitution-in-bioinformatics.html)に名前付きパイプがありますが、私は持っていませんWindowsで同様のことを聞いた – dimirsen
@dimirsen名前付きパイプをバッファしないようにする方法はありますか? –