途中でパイプの内容を出力したい場合があります (皆さんそうではありませんか?)。
私は通常、次のようにします(はい、おそらくもっと良い方法が他にもあることを知っています):
terminal=$(tty)
echo hello world |tee $terminal|awk '{print $2, $1}'
出力する
hello world
world hello
これは素晴らしいことであり、すべての点で素敵です。
$terminal 変数を作成せずに本当にやりたいことを除いて。簡単ですよね、パイプ内tee $terminal
で ' ' を ' tee $(tty)
' に置き換えるだけで、変数は不要ですか? 右?
違う。
echo hello world |tee $(tty)|awk '{print $2, $1}'
出力
world hello
つまり、パイプの途中からの出力が飲み込まれました。
これが間違いなく第一世界の問題であることは認めていますが、それは私を悩ませており、2 番目の解決策がうまくいかない理由を知りたいと思っています。
誰?