旧それなりブログの跡地、画像やスタイルやJSなどが壊れてることがあります。

[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

・・・とか、いつかやっちゃいそうで困るんだぜ・・・。