ubuntu shell 脚本循环查看某个进程的内存使用情况
脚本文件 WatchMemberUsage.sh 内容如下:
#!/bin/bash
# 输入参数一个:YourProcessName
while :
do
pid=$(ps aux | grep -w $1| grep -v grep | awk '{print $2}')
echo "Found PID:"
echo $pid
#watch -n 0 cat /proc/$pid/status
if [ ! $pid ]; then
echo Not found process.
sleep 1;
else
while :
do
time=$(date "+%Y-%m-%d %H:%M:%S")
#memory=$(cat /proc/$pid/status | head -n 22 |tail -n 21)
memory=$(cat /proc/$pid/status | awk 'NR==22')
echo $time$memory >> output.txt
echo $time$split$memory
sleep 1;
done
fi
done
使用说明:
就把进程名:YourProcessName 改成要查询的进程的名字,注意不支持多个同名进程。可以改成输入参数
bash WatchMemberUsage.sh YourProcessName # 终端执行