標準入力でコマンドを入力し、同時にその標準入力をファイルにダンプしたいと思います。これは失敗した試みです:
read | tee dump.txt
このコマンドは標準入力を待機しています。入力したものはすべて、dump.txt にダンプされるものと期待していますread
。どうすればいいでしょうか?
答え1
パイプを入れ替えます。まず出力を取得してtee
ファイルにコピーを保存し、それを標準出力に再度複製してから、それを実際のコマンドにパイプします。
代わりにここを使用します。cat
これは、入力が不定量で、最初の行(および追加の改行)の後に終了しないためです。ここその説明については、次のとおりですread
。
echo something | tee dump.txt | cat