我想记录我的 CPU 和内存使用情况。有很多帖子提供了使用、、等的不同选项。ps
我top
真的python
很喜欢这种ps
方式。就我而言,我调用:
ps -o user -o pid -o pmem -o pcpu -u dxd9163
这给出了一个很好的表格:
因为我正在记录这些数据(每十分钟一次),所以我想将日期/时间信息添加到表的每一行,如下所示:
date +%Y/%m/%d/%H:%M
我不想要进程时间、运行时间或启动时间,我只想要拍摄快照的时间。因此,在上图中,time
将出现一个新字段,其中包含每个快照的所有相同信息。
看来该ps
函数有一个弃用的选项,它以前可能有效但现在不再有效(utime
)。
知道怎么做吗?这可能很容易,但我对 Linux 还不熟悉。
我的最终目标是每 10 分钟记录一次usage.txt
用户的 RAM 和 CPU 使用情况。
答案1
一个技巧是更换每个“行首” 和“行首,时间戳”:
ps -o user -o pid -o pmem -o pcpu -u dxd9163 | sed "s#^#$(date +%Y/%m/%d/%H:%M) #"
通常sed
代替运算符使用斜线作为分隔符 ( s/…/…/
),但由于时间戳已包含斜线,因此这不起作用。因此我使用了不同的分隔符 ( s#…#…#
)。