watch -n 3 du -sh >> log
このコマンドは 3 秒ごとに値を更新する可能性がありますが、現在のディレクトリの最新のサイズのみがファイル log に保存され、古い値は単純に上書きされるため、古い値を予約して log という名前のファイルに保存するにはどうすればよいですか?
watch
ファイルを上書きしません。実際、リダイレクトの途中でファイルを上書きすることはできません。
何が起こるかはwatch
、(ANSI コードを使用して) 連続する画面間の違いのみを保存することです。何かをログに記録するために使用するようには設計されていません (したがって、とにかく「監視」と呼ばれます)。
xxd
ログ ファイルの実際の内容を表示するために使用します。
おそらく、これはあなたが望むより多くのことをするかもしれません:
while sleep 3
do
du -sh
done >> log &
tail -F log