以下这个脚本可以简单地监视Linux下各个进程的运行状况。

 

 

#!/bin/sh

PSLOG=~/ps-log
LOADLOG=~/load-log
INTERVAL=30 # ps 运行时间间隔
COUNTER=10 # 统计次数

while [ $COUNTER -gt 0 ]
do
TIME=$(date +%H:%M:%S)
cat /proc/loadavg |
sed -e "s/^/$TIME /" >> $LOADLOG
ps -e --cols 200 o user,pid,ppid,pri,size,rss,stat,pagein,%cpu,%mem,time,cmd |
sed -e "s/^/$TIME /" >> $PSLOG

echo $TIME $(ls -hs $LOADLOG $PSLOG)
let COUNTER-=1
sleep $INTERVAL
done

 

该脚本每隔 $INTERVAL 秒执行一次 ps 命令并将结果记录到日志文件中,共执行 $COUNTER 次。因此 $INTERVAL * $COUNTER 即为监视时间。例如想监视 20:00~2:00 的情况,即可设置 COUNTER=720,因为 720 * 30 = 21600秒 = 6小时。

(责任编辑:A6)

本站文章仅代表作者观点,本站仅传递信息,并不表示赞同或反对.转载本站点内容时请注明来自www.linuxeden.com-Linux伊甸园。如不注明,www.linuxeden.com将根据《互联网著作权行政保护办法》追究其相应法律责任。