总体的cpu和mem
cat cpu_mem.sh
#!/bin/bash
while true
do
sar -u 1 1 |awk '{print $1,$4}' | sed -n '4p' >> cpu
sar -r 1 1 |awk '{print $1,$5}' | sed -n '4p' >> mem
done
某一进程的cpu和mem
#!/bin/bash
pid=$1 #获取进程pid
echo $pid
interval=1 #设置采集间隔
while true
do
echo $(date +"%y-%m-%d %H:%M:%S") >> proc_memlog.txt
cat /proc/$pid/status|grep -e VmRSS >> proc_memlog.txt #获取内存占用
cpu=`top -n 1 -p $pid|tail -2|head -1|awk '{ssd=NF-4} {print $ssd}'` #获取cpu占用
echo "Cpu: " $cpu >> proc_memlog.txt
echo $blank >> proc_memlog.txt
sleep $interval
done
监测多个进程cpu方法一:
#!/bin/bash
while true
do
ps aux | head -1;ps aux|grep -E 'agent|tsdb|hbase' |grep -v grep|sort