shell脚本监控CPU脚本

Posted 大数据架构师专家

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell脚本监控CPU脚本相关的知识,希望对你有一定的参考价值。

   在运维过程中,我们有时需要对CPU进行优化,啥时候优化呢? 自然是出问题的时候,那么啥时候出问题呢? 这个问题就可以使用我们的shell脚本了.


     原理: 通过监视一段时间内CPU使用情况,找出长期占用CPU的进程并对其进行优化,提高CPU的效率


      我们先来写一个监视CPU并计算一小时内CPU的使用情况的脚本:

    

#!/bin/bash

SECS=3600

UNIT_TIME=60

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

echo Watching CPU usage... ;

for((i=0;i<STEPS;i++))

do

    ps -eo comm,pcpu |tail -n +2 >>/tmp/cpu_usage.$$

    sleep $UNIT_TIME

done


echo

echo CPU  eaters :

cat /tmp/cpu_usage.$$ | \

awk '

{ process[$1] += $2; }'

END{

    for(i in process)

    {

      printf( "%-20s %s\n",i,process[i]);

    }


   }' |sort -nrk 2 | head

rm /tmp/cpu_usage.$$                


          写惯了python,在写shell脚本,就会觉得shell脚本比较晦涩,而python就不一样了,简单,易懂,


       之前有知识星球的星球居民问: shell都能用来干嘛,好像学完了还是不知道能写啥.

    

          除了这个脚本外,shell还可以写很多管理脚本这里举例说明几个方向:

  1.    图像文件的缩放及格式转换

  2.    使用shell读取mysql数据库

  3.    用户管理

  4.   检查磁盘及文件系统错误

  5.  监控用户登录防范黑客入侵

  6.  搭建防火墙

  7.  写图片加载器及下载工具

  8.   跟踪网站变动等

 

     其实有时候不用刻意迷信python,很多时候你觉得python好,shell差,实在是你因为我们写shell脚本能力太差.

    当然了,有些事情python能做,shell做不了,后面我们会来讨论python的妙处.




      



以上是关于shell脚本监控CPU脚本的主要内容,如果未能解决你的问题,请参考以下文章

Linux shell 脚本监控cpu,内存,硬盘,网络,是否存活

shell脚本之短信监控脚本(磁盘cpu等等)

shell常用监控脚本

shell脚本监控系统负载CPU和内存使用情况

shell脚本

shell脚本检测监控mysql的CPU占用率