linux脚本-使用top命令监控进程cpu与mem占用

个人随笔 (Owed by: 春夜喜雨 http://blog.csdn.net/chunyexiyu)

下面是两个shell脚本程序,算是常用到的两个脚本形式,记录下来,供参考使用。

一个是监控进程cpu与mem占用的;

一个是启动多进程,为程序传递不同数字参数的;

1. linux下使用脚本跟踪一个服务的cpu占用

shell 复制代码
#!/bin/sh
procname=systemd
delay=30
while true
do
# get pid from system
pid=`ps -ef|grep ${procname}|grep -v grep|head -n 1|awk -F' ' '{print $2}'`

# get process info from top command
#echo "top -n 1 -b -p ${pid} "
top -n 1 -b -p ${pid}|awk -F'\n' '$1+0>0 {print strftime("%Y-%m-%d_%H:%M:%S"),$0; fflush();}'|tee -a top.log

# delay a few seconds
sleep ${delay}
done

2. 传递循环数字参数给程序

启动多个进程,监控不同的id范围

shell 复制代码
#!/bin/sh
func=./trace 
for i in $(seq 1 20) 
do  
# calc startid and endid
startid=`expr $i \* 5000`
endid=`expr $startid + 5000`

# start process
echo "$func $startid $endid > ${i}.log"
$func $startid $endid >${i}.log &

done

个人随笔 (Owed by: 春夜喜雨 http://blog.csdn.net/chunyexiyu)

相关推荐
2301_800050991 小时前
DNS 服务器
linux·运维·笔记
Lin_Aries_04211 小时前
容器化简单的 Java 应用程序
java·linux·运维·开发语言·docker·容器·rpc
SELSL1 小时前
SQLite3的API调用实战例子
linux·数据库·c++·sqlite3·sqlite实战
小牛马爱写博客2 小时前
DNS 服务器与 DHCP 服务器详解及配置指南
linux·运维·服务器·dns·dhcp
维尔切2 小时前
HAProxy 负载均衡器
linux·运维·数据库·负载均衡
什么半岛铁盒2 小时前
C++项目:仿muduo库高并发服务器-------Channel模块实现
linux·服务器·数据库·c++·mysql·ubuntu
小白银子2 小时前
零基础从头教学Linux(Day 42)
linux·运维·服务器·网络·nginx
望获linux2 小时前
【Linux基础知识系列:第一百四十篇】理解SELinux与系统安全
linux·运维·服务器·数据库·chrome·macos
趙卋傑3 小时前
项目发布部署
linux·服务器·后端·web
纳切威4 小时前
CentOS 10服务器版 部署Zabbix7.2 server端
linux·运维·centos·zabbix