今天学习到的几条shell技巧
1、获取某个进程的进程号
PID=`ps aux | grep 进程名 | grep -v "grep" | awk '{print $2}'`
2、获取某个进程的CPU(同理可获取内存点用)
CPU=`top -b -n 1 -p $PID | awk -v pid=$PID '{if ($1==pid)print $7}'`
注:其实用上面的ps aux同样可以取到CPU占用,但对于多核CPU的情况下,ps aux取得的CPU是平均后的值,用哪种取值看应用场景吧
CPU==`ps aux | grep 进程名 | grep -v "grep" | awk '{print $3}'`
3、小数取整,因为上面获取的CPU占用带1位小数,所以需要取整才能用-gt等比较
awk -F . '{print $1}'
意思是将.进行split,然后只取第一项,即为整数部份,纯粹是取整,非四舍五入
4、分割字符串:
cut -d : -f 1
意思是以:为分割符,输出分割后的第1项