如何通过PHP或bash获取Linux进程消耗的CPU%?我试图为此找到任何实用程序,但无法实现。我发现的所有结果都是出于同样的原因。
答案 0 :(得分:1)
我在这里找到了这个惊人的答案:https://unix.stackexchange.com/questions/554/how-to-monitor-cpu-memory-usage-of-a-single-process
要在脚本上使用该信息,您可以执行以下操作:
calcPercCpu.sh
#!/bin/bash
nPid=$1;
nTimes=10; # customize it
delay=0.1; # customize it
strCalc=`top -d $delay -b -n $nTimes -p $nPid \
|grep $nPid \
|sed -r -e "s;\s\s*; ;g" -e "s;^ *;;" \
|cut -d' ' -f9 \
|tr '\n' '+' \
|sed -r -e "s;(.*)[+]$;\1;" -e "s/.*/scale=2;(&)\/$nTimes/"`;
nPercCpu=`echo "$strCalc" |bc -l`
echo $nPercCpu
使用如下:calcPercCpu.sh 1234其中1234是pid
对于指定的$ nPid,它将测量整个1秒内cpu使用量的10个快照的平均值(每个延迟0.1秒* nTimes = 10);这提供了当前正在发生的事情的良好和快速准确的结果。
根据需要调整变量。