パイプと変数の割り当ての違いは何ですか?
私はあなたを知っていますヌルバイトは使用できません。。またどんな例がありますか?
以下のパイプラインはどうですかyes | cat
?y
出力を割り当てるとき
test=`yes`
何も出力しません。実行中にcat
データが転送される前にコマンド全体が実行されますか?
ベストアンサー1
test=`yes`
出力全体を読み込み、yes
それを変数に割り当てようとしていますtest
。
の出力はyes
無限なので、この割り当ては無限ループを呼び出します。
その後、タスクpipe
などのオペレーティングシステムメカニズムを使用します|
。
test=`yes`
少し
yes | thisShell.slurpInputAndSaveToVariable test
cat
入力全体を吸収する試みは行われないため、ストリーミングプロデューサ(この場合は無制限)と消費者のペアで同時に実行できますyes
。cat