列出十分钟内占用cpu最多的几个进程

ps命令用于收集系统中进程的详细信息。这些信息包括cpu使用情况、正在执行的命令、内存使用、进程状态等。

列出十分钟内占用cpu最多的几个进程_第1张图片

 sh脚本:

#!/bin/bash

SECS=600
UNIT_TIME=10

STEPS=$(( $SECS / $UNIT_TIME))

echo Watching CPU Usage...;

for((i=0;i> /tmp/cpu_usage.$$
  sleep $UNIT_TIME
done

echo
echo CPU eaters:

cat /tmp/cpu_usage.$$ | \
awk '
{ prcoess[$1]+=$2;}
END{
    for(i in process)
    {
      printf("%-20s %s",i,process[i];
    }
}' | sort -nrk 2 | head -n 4

rm /tmp/cpu_usage.$$

脚本运行的时候会出现下面的错误:

列出十分钟内占用cpu最多的几个进程_第2张图片

这主要是dash存在导致的问题,我们运行上述命令后,直接选择NO就可以了。

你可能感兴趣的:(Linux和Windows系统)