時間がかかるプロセスを実行しています。時間はあまり問題になりませんが、RAMがどれだけ必要かを知りたいです。プロセスはすでに実行中なので、/usr/bin/time
オプションではありません。プロセスのpidを見つけて実行しました。
watch -n 1 grep VmHWM /proc/3100/status
うまく機能し、そのままにして別の操作を行った後、後で1秒間隔で値が記録された内容を確認できます。ウォッチが最後の有効な出力
grep: /proc/3100/status: No such file or directory
オプションを使用しても-e
役に立ちません。watch
ゼロ以外の終了時に出力をフラッシュしない方法はありますか?それとも、前のゼロ出口が表示され続けるように、最も近い2つの出口を表示しますか?
答え1
これにはシェルwhileループを使用します。
pid=3100
while out=$(grep VmHWM /proc/$pid/status); do
printf "\r$out "
sleep 1
done
printf "\n"