很好的一天,
我需要添加一个列标题“time”,它将显示每次在新行上执行输出时的当前时间,代码如下:

top -b -n 1 -p 984 -o +PID -o +VIRT | sed -n '7,12p' | awk '{printf "%1s %-4s\n",$1,$5}'

我要找的输出:
TIME      PID     VIRT
12:00:00  984     1024
12:16:01  984     995
12:44:29  984     1008

(这些值仅用于显示,不正确)
此外,它应该是一个无休止的循环,间隔10秒,直到用户停止它。
一切都是从pidandvirt.sh执行的
(Linux脚本)
提前谢谢你的帮助

最佳答案

我建议使用ps命令而不是top

echo "TIME PID VSIZE"
while true ; do
    echo "$(date +%H:%I:%S) $(ps -p 984 -o pid,vsize --no-headers)"
    sleep 1
done

关于linux - 如何将top命令与日期列组合,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42988065/

10-15 14:54