为一个Linux过程监控,采用Bash脚本。

采用ps命令的过程监控,使用周期加上连续监测的睡眠时间。

使用方法:

psmonitor.sh -p [pid] -d [interval] -n [statistics count]

參数:

-p 监控的进程ID

-d 读性能数据间隔

-n 统计次数,达到该次数。自己主动退出

#!/bin/bash
interval=0
count=0
pid=""
while getopts "p:d:n:" arg
do
case $arg in
p)
pid=$OPTARG
echo "pid: $pid"
;;
d)
interval=$OPTARG
echo "interval:$interval"
;;
n)
count=$OPTARG
echo "count:$count"
;;
\?)
echo "unkonw argument"
exit 1
;;
esac
done i=0; while [ true ]; do
if [ $i -gt $count ]
then
exit 0;
else
let "i+=1"
fi
ps h -p $pid -o rss,vsz,%mem,%cpu
sleep $interval done

监控效果:

-bash-3.2$ ./psmonitor.sh -p 4181 -d 1 -n 10
pid: 4181
interval:1
count:10
1511232 2537664 37.3 2.4
1511232 2537664 37.3 2.4
1511232 2537664 37.3 2.4
1511232 2537664 37.3 2.4
1511232 2537664 37.3 2.4
1511232 2537664 37.3 2.4
1511232 2537664 37.3 2.4
1511232 2537664 37.3 2.4
1511232 2537664 37.3 2.4
1511232 2537664 37.3 2.4
1511232 2537664 37.3 2.4

版权声明:本文博主原创文章,博客,未经同意不得转载。

最新文章

  1. splay最终模板
  2. Selenium使用
  3. CodeForces 615B Longtail Hedgehog
  4. Noip2013调试技巧
  5. Python学习之路-Day2-Python基础2
  6. ios控制器生存周期
  7. thymleaf th:text="|第${user.courseSort}课|" 对于不知道的真的是解渴了
  8. js的逆向解析
  9. Java -- 构造函数 & this & 方法重写和方法重载的区别
  10. Java学习笔记四:三目运算符与字符串连接符等
  11. 使用 JS 实现图片左右跑马灯
  12. pip安装django失败
  13. Oracle 11.2.0.4 RAC重建EM案例
  14. spring-boot-2.0.3启动源码篇 - 阶段总结
  15. python - class类 (七) 三大特性 - 封装 结尾
  16. web前端学习路线(含20个真实web开发项目集合)
  17. 计算元素个数(count和count_if)
  18. python之路---11 第一类对象 函数名 闭包 迭代器
  19. Windows 8创新之路——样章分享
  20. python-计算器实现

热门文章

  1. delphi删除只读文件
  2. hadoop出现ava.lang.ClassNotFoundException: org.codehaus.jackson.map.JsonMappingException
  3. Hibernate核心接口
  4. [破解]java打包Exe工具 - Jar2Exe Wizard
  5. 推动Common Lisp的实际应用
  6. Lisp的永恒之道 好文
  7. Redis 学习笔记五 经常使用php函数
  8. A Game of Thrones(19) - Jon
  9. Ubuntu下Chromium源码的编译
  10. Android实现位图剪切