- 定期的にコマンドを実行したい
- コマンド結果をリアルタイムで確認したい
- 結果はファイルにも出力したい
- 実行時間を出力したい
- なるべく簡単に行いたい
という要件
watch -d 'echo `date` `ls` | tee -a result.log'
watch
コマンドは、定期的にコマンドを実行します。
-d
オプションは画面出力時に差分を強調します。なくても大丈夫です。
tee
コマンドは、入力を画面とファイルに出力します。
-a
オプションがファイルへの追記となります。
ちなみにwatch
コマンドの結果自体をファイル出力してしまうと、
エスケープなどwatch
コマンドが出力する不要なものがファイルに含まれてしまいます
NG例
watch -d echo `date` `ls` | tee -a result.log