私がこれを行うとき:
find . -name "pattern" | grep "another-pattern"
プロセスfind
とgrep
は一緒に生成されていますか? 私の推測ではイエスです。もしそうなら、これはどのように機能しますか?:
yes | command_that_prompts_for_confirmations
yes
が継続的に「y」を標準出力に送信し、標準入力をcommand_that_prompts_for_confirmations
読み取るたびに「y」を読み取る場合、いつ終了するかをどうやって知るのでしょyes
うか? yes
出力を他のコマンドにパイプせずに単独で実行すると、決して終了しないためです。
しかし、パイプ コマンドですべてのプロセスが同時に生成されない場合、yes
出力する 'y' の数をどうやって知るのでしょうか? ここは私にとってキャッチ22です。このパイピングが *NIX でどのように機能するか説明してもらえますか?