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)

相关推荐
米高梅狮子1 小时前
03.网络类服务实践
linux·运维·服务器·网络·kubernetes·centos·openstack
June`1 小时前
网络编程时内核究竟做了什么???
linux·服务器·网络
楼兰公子2 小时前
RK3588 + Linux7.0.3 网络工程调试错误速查手册
linux·网络·3588
Elnaij2 小时前
Linux系统与系统编程(9)——自设计shell与基础IO
linux·服务器
IMPYLH3 小时前
Linux 的 unexpand 命令
linux·运维·服务器·bash
|_⊙3 小时前
Linux 文件知识 补充
linux·运维·服务器
落羽的落羽4 小时前
【算法札记】练习 | Week4
linux·服务器·数据结构·c++·人工智能·算法·动态规划
Mortalbreeze4 小时前
深度理解文件系统 ---- 从磁盘存储到内核存储
大数据·linux·数据库
LN花开富贵7 小时前
Ubuntu aarch64 架构安装 NoMachine 远程控制 避坑与实战
linux·运维·笔记·学习·ubuntu·嵌入式
取经蜗牛7 小时前
Windows 11 WSL + Ubuntu 24.04 安装指南
linux·windows·ubuntu