[Linux] teeコマンドで標準出力しつつファイルへ保存
2009年6月11日
Linuxで、
「標準出力をターミナルに出しつつ、リダイレクトのようにファイルに保存する。」
ということをしたかった。
「標準出力をターミナルに出しつつ、リダイレクトのようにファイルに保存する。」
ということをしたかった。
どうも、teeコマンドというのを使うらしい。
参考)Manpage of tee
説明がメンドイのでサンプルコード
#!/bin/sh list="0 1 2 3" for i in $list do echo "-----" echo $i | tee ./output.txt #echo $i | tee -a ./output.txt sleep 1 done
※ -a を付けると追記モードになって、0 1 2 3 がファイルへ保存されます。
付けない場合は 3 だけです。
※ リダイレクトじゃなくてパイプを使う点に注意。
# echo "aaa" | /path/to/tee
を
# echo "aaa" > /path/to/tee
・・・とか、いつかやっちゃいそうで困るんだぜ・・・。