分享一段shell脚本,指定某进程的ID后,它每隔2秒打印出当前进程的CPU和内存占用率记录在文件中, 并在每条记录前面加上序号:
#!/bin/bash
__arg=$1
echo "%CPU %MEM" > sss.log
if [ -z "$__arg" ]; then
#top -c | head -n 5
echo "exit!!!"
exit 1
fi
var=0
while (true)
do
#clear
var=$((var+1))
top -b -n 1 -p $__arg|tail -n +8|awk -v test="$var" '{print test,$9,$10}' >> sss.log
sleep 2
echo "round $var"
done