• 【Shell脚本】统计本机内存情况和使用状况的脚本


    作者:gnuhpc
    出处:http://www.cnblogs.com/gnuhpc/

    #!/bin/bash
    #########################################################################
    # Author: Futuredaemon
    # Created Time: Thu 19 Nov 2009 10:57:15 PM CST
    # File Name: checkMem.sh
    # Description: 
    #########################################################################
    
    #fetch and process memory information
    [ -f /proc/meminfo ] && {  #First judge whether the file exists
    #-e是模式的意思,常用来保护以破折号开头的模式。
    #-w是全字匹配。
    #-i忽略大小写。
    #-d指定分割符,-f为按照分割符取出的域,2-指的是域2及以后
    Buffers=`grep -we 'Buffers' /proc/meminfo | cut -d' ' -f2- | tr -d "[A-Z][a-z] "`
    Cached=`grep -we 'Cached' /proc/meminfo | cut -d' ' -f2- | tr -d "[A-Z][a-z] "`
    MemFree=`grep -ie 'MemFree' /proc/meminfo | cut -d' ' -f2- | tr -d "[A-Z][a-z] "`
    MemTotal=`grep -ie 'MemTotal' /proc/meminfo | cut -d' ' -f2- | tr -d "[A-Z][a-z] "`
    SwapCached=`grep -ie 'SwapCached' /proc/meminfo | cut -d' ' -f2- | tr -d "[A-Z][a-z] "`
    SwapFree=`grep -ie 'SwapFree' /proc/meminfo | cut -d' ' -f2- | tr -d "[A-Z][a-z] "`
    SwapTotal=`grep -ie 'SwapTotal' /proc/meminfo | cut -d' ' -f2- | tr -d "[A-Z][a-z] "`
    }
    
    MEMUSED="$(( ( ( ( $MemTotal - $MemFree ) - $Cached ) - $Buffers ) / 1024 ))"
    MEMTOTAL="$(( $MemTotal / 1024))"
    MEMFREE="$(( $MEMTOTAL - $MEMUSED ))"
    MEMPER="$(( ( $MEMUSED * 100 ) / $MEMTOTAL ))"
    [ "$SwapTotal" -gt "1" ] && {
      SWAPUSED="$(( ( ( $SwapTotal - $SwapFree ) - $SwapCached ) / 1024 ))"
      SWAPTOTAL="$(( $SwapTotal / 1024))"
      SWAPFREE="$(( $SWAPTOTAL - $SWAPUSED ))"
      SWAPPER="$(( ( $SWAPUSED * 100 ) / $SWAPTOTAL ))" 
    } || {
      SWAPUSED="0"
      SWAPTOTAL="0"
      SWAPPER="0" 
    }
    
    # display the information
    /bin/echo
    /bin/echo "Memory"
    /bin/echo "Used: $MEMUSED MB"
    /bin/echo "Free: $MEMFREE MB"
    /bin/echo "Total: $MEMTOTAL MB"
    /bin/echo
    /bin/echo "Swap"
    /bin/echo "Used: $SWAPUSED MB"
    /bin/echo "Free: $SWAPFREE MB"
    /bin/echo "Total: $SWAPTOTAL MB"
    /bin/echo
    
    

    作者:gnuhpc
    出处:http://www.cnblogs.com/gnuhpc/


                   作者:gnuhpc
                   出处:http://www.cnblogs.com/gnuhpc/
                   除非另有声明,本网站采用知识共享“署名 2.5 中国大陆”许可协议授权。


    分享到:

  • 相关阅读:
    【疯狂积累CSS】1:CSS基础
    阿里云服务器配置小程序用ssl证书
    阿里云服务器申请ssl安全证书
    PDO连接SQLServer2008(linux和windows)
    win7 PHP7.0的PDO扩展
    Apache+php+mysql win7 64位安装的几个注意事项
    PHP配置xdebug
    PHPExcel导出
    【设计模式】命令模式
    【maven学习笔记】 01 初见
  • 原文地址:https://www.cnblogs.com/gnuhpc/p/2844261.html
Copyright © 2020-2023  润新知