老师好,求助笔试题

来源:10-7 awk动作中的条件及循环语句(上)

qq_慕用4483748

2021-03-30

监控一个应用进程,显示进程号,cpu使用率,内存使用率,格式如下:
---------------------------------
进程号:1234
cpu使用率:90%
内存使用率:80%
---------------------------------
要求每秒显示一次
脚本全局可使用

写回答

1回答

酷田

2021-05-07

脚本内容如下:

#!/bin/bash

#


ARG_PID=$1

THIS_PID=$$


ps -ef | grep $ARG_PID | grep -v grep &> /dev/null


if [ $? -ne 0 ];then

echo "PID $ARG_PID is not exist"

exit

fi


while true

do


echo "DATE: `date "+%Y-%m-%d %H:%M:%S"`"

echo

CPU_USE="`ps aux | grep $ARG_PID | grep -v grep | grep -v $THIS_PID |  awk '$3!="0.0"{print $3}'`"

MEM_USE="`ps aux | grep $ARG_PID | grep -v grep | grep -v $THIS_PID |  awk '$3!="0.0"{print $4}'`"


echo "CPU Utilization with PID $ATG_PID is: ${CPU_USE}%"

echo "MEM Utilization with PID $ARG_PID is: ${MEM_USE}%"


echo "-------------------------------------"


sleep 1

done



执行:sh monitor.sh 24145

24145 为进程的pid

//img.mukewang.com/szimg/60951666090cc2fd12250706.jpg

0
0

掌握Shell脚本编程 360架构师带你进阶Linux高手

30%知识讲解+70%实例操作 掌握Shell脚本编程能力

1638 学习 · 297 问题

查看课程