我正在运行一个资源密集型的 python 应用程序,但想每 5 秒持续了解该应用程序的 CPU 使用情况并显示结果。
我使用mpstat -P ALL
但是我需要每 5 秒重新运行此命令。
有没有办法每 5 秒持续轮询并显示结果。我也想格式化输出。
答案1
正如其他人已经提到的,watch
这是观察命令输出如何变化的方法。但是,如果您想修改输出和/或在脚本中使用它,我会使用循环和printf
:
while :; do
printf "%s %.1f %s\r" "I need" "$(mpstat -P ALL | awk 'NR==4{print $3}')" "here."
sleep 5
done
这将打印“我需要X这里。”,等待5
秒并重复覆盖现有的文本行。
X在这个例子中是行中的值4
, 柱子3
的mpstat
输出,格式化为f
四舍五入为1
小数。按Ctrl+C可中断循环。