zoukankan      html  css  js  c++  java
  • shell脚本编写查看每个进程使用的swap分区的大小

    #今天接到领导任务需要查看每个进程使用的swap分区大小,遂编写此脚本进行查看
    #!/bin/bash function ComputeSwap { SUM=0 LUNXUN=0 for PID in `cat 1.txt| xargs` ; do PROGNAME=`ps -p $PID -o comm --no-headers` for SWAP in `grep Swap $DIR/smaps 2>/dev/null| awk '{ print $2 }'` do let SUM=$SUM+$SWAP done echo "PID=$PID - Swap used: $SUM - ($PROGNAME )" let LUNXUN=$LUNXUN+$SUM SUM=0 done echo "ALL swap used: $LUNXUN" } ls /proc | grep "^[0-9]"| sort -n > 1.txt ComputeSwap

    我们看看最后执行的结果是什么

    [root@master01 ~]# bash a.sh 
    PID=1 - Swap used: 0 - (systemd )
    PID=2 - Swap used: 0 - (kthreadd )
    PID=3 - Swap used: 0 - (rcu_gp )
    PID=4 - Swap used: 0 - (rcu_par_gp )
    PID=6 - Swap used: 0 - (kworker/0:0H-xf )
    PID=7 - Swap used: 0 - (kworker/u128:0- )
    PID=8 - Swap used: 0 - (mm_percpu_wq )
    PID=9 - Swap used: 0 - (ksoftirqd/0 )
    PID=10 - Swap used: 0 - (rcu_sched )
    PID=11 - Swap used: 0 - (rcu_bh )

    这是测试环境下的,所以没有swap分区使用,生产还是比较多的

  • 相关阅读:
    oracle中 connect by prior 递归算法
    sql优化__rownum的使用【转】
    ASP.NET Core四大部件
    .net core Socket
    .NET Core 配置文件
    .NET Core IOC AOP
    Quartz.Net—MisFire
    Quartz.Net—配置化
    Quartz.Net—IJob特性
    Quartz.Net—DateBuilder
  • 原文地址:https://www.cnblogs.com/FengGeBlog/p/12119634.html
Copyright © 2011-2022 走看看