1 原理

  脚本中通过执行free获取内存信息,然后将文本信息通过“空格”分隔符分割成字符串数组将不同信息提取出来,最后通过bc计算出百分比

2 脚本

#!/bin/sh
HOSTNAME=`hostname -s`
echo "==============hostname================"
echo "hostname=$HOSTNAME"

MEMORYLINE=`free | grep Mem`

#字符串转数组
MEMORYARR=($MEMORYLINE)
echo "==============memory=================="
total=${MEMORYARR[1]}
used=${MEMORYARR[2]}
echo "total = $total"
echo "used = $used"

#计算百分比
used_pre=`echo "scale=2;$used*100/$total" | bc`
echo "used_pre = $used_pre"%
free=${MEMORYARR[3]}
echo "free = $free"
free_pre=`echo "scale=2;$free*100/$total" | bc`
echo "free_pre = $free_pre"%
echo "================CPU==================="

linux通过脚本获取内存信息的更多相关文章

  1. Android 获取内存信息

    由于工作需要,研究了一下android上获取内存信息的方法,总结如下: 1.SDK获取 在Java层利用API获取很简单,直接使用ActivityManager.MemoryInfo类即可,代码如下: ...

  2. Linux C 程序 获取目录信息(16)

    4.获取当前目录getcwd 会将当前工作目录绝对路径复制到参数buf所指的内存空间5.设置工作目录chdir6.获取目录信息opendir打开一个目录readdir读取目录中的内容  读取目录项信息 ...

  3. linux查看CPU和内存信息

    一 先来看看ps命令: 1.查看当前某个时间点的进程:ps命令就是最基本同时也是非常强大的进程查看命令.使用该命令可以确定有哪些进程正在运行和运行的状态.进程是否结束.进程有没有僵死. 哪些进程占用了 ...

  4. PHP检测获取内存信息

    PHP也可以检测获取到Windows的内存信息,而且代码还挺简单,无意发现的,觉得以后能用上,在此与大家分享. 本代码将得到总内存.初始使用等内存信息: <?php echo "初始: ...

  5. 通过python脚本获取服务器硬件信息

    #!/usr/bin/python # coding:utf-8 """ 采集机器自身信息 1 主机名 2 内存 3 ip与mac地址 4 cpu信息 5 硬盘分区信息 ...

  6. C#通过WinAPI获取内存信息,32位64位可用

    using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Runti ...

  7. linux shell 脚本获取和替换文件中特定内容

    1.从一串字符串中获取特定的信息 要求1:获取本机IP:menu.lst为系统镜象的IP配置文件,需要从中获取到本机IP信息(从文件获取信息) timeout title live find --se ...

  8. 转: Linux 系统调用sysconf 获取系统配置信息

    1.前言 linux提供了sysconf系统调用可以获取系统的cpu个数和可用的cpu个数. 2.sysconf  函数 man一下sysconf,解释这个函数用来获取系统执行的配置信息.例如页大小. ...

  9. linux查看cpu、内存信息

    #查看CPU信息(型号) cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c   # 总核数 = 物理CPU个数 X 每颗物理CPU的核数  # ...

随机推荐

  1. 正则化--Lambda

    模型开发者通过以下方式来调整正则化项的整体影响:用正则化项的值乘以名为 lambda(又称为正则化率)的标量.也就是说,模型开发者会执行以下运算: $$\text{minimize(Loss(Data ...

  2. Android下的ActionBar

    1 http://blog.csdn.net/lilu_leo/article/details/7674904 2 http://blog.csdn.net/eclipsexys/article/de ...

  3. 配置YUM源更新源

    在虚拟机上更新yum,总是告诉我找不懂镜像服务器地址,配置失败,连 #yum install yum 它自己都无法更新. 于是决定先配置一下yum的更新源. 首先找到yum的主要配置文件, 一般在/e ...

  4. H5 打开App

    IOS 1.只能在safari浏览器打开, 2.必须App安装的情况下. 3.IOS必须配置 URLSchemes 为 "yidiandai://"  才可以. <!DOCT ...

  5. SpringCloud系列三:将微服务注册到Eureka Server上

    1. 回顾 通过上篇博客的讲解,我们知道硬编码提供者地址的方式有不少问题.要想解决这些问题,服务消费者需要一个强大的服务发现机制,服务消费者使用这种机制获取服务提供者的网络信息.不仅如此,即使服务提供 ...

  6. STM32 寄存器库和固件库

    寄存器和固件库开发的差别和联系 固件库就是函数的集合,固件库函数的作用是向下负责与寄存器直接打交道.向上提供用户函数调用的接口(API). 在 51 的开发中我们经常的作法是直接操作寄存器,比方要控制 ...

  7. [原创]个人工具 - 对APK极限压缩并对齐的工具(58.ReExtremeZipAndAlignAPK)

    2014年9月13日:RootExplorer_v2.21.1_Aligned对齐后:在华为U8860(2.3.6).酷派8150S(4.0.3)上安装滑动列表时,崩溃.原版本(已对齐)则OK.(不知 ...

  8. sgu101-欧拉回路

    101. Domino time limit per test: 0.25 sec.  memory limit per test: 4096 KB Dominoes – game played wi ...

  9. 高度平衡树 -- AVL 树

    Scheme 的表达, 优雅. #lang scheme ( define nil '() ) ( define ( root tree )( car tree ) ) ( define ( left ...

  10. Linux进程的虚拟内存区域划分

    Linux进程的虚拟内存区域分为:代码区.只读常量区.全局区.BSS段.堆区.栈区 代码区:存储功能代码,函数名所在的区域 只读常量区:存放字符串常量,以及const修饰的全局变量 全局区/数据区:存 ...