shell脚本根底小习题(二)

shell脚本根底小习题(二)

编写一个memusage.sh,依据Free指令的作用核算出内存占用

思路:

1:在屏幕输出“free”先检查指令作用

shell脚本根底小习题(二)

2:依据给出的作用咱们该用到“total”和“free”

total:列闪现体系总的可用物理内存和交流空间巨细。

free:列闪现还有多少物理内存和交流空间可用运用。

这儿咱们只看Mem(内存的运用情况)就能够。

3:咱们创立脚本可是咱们在free的Mem中只需要用(“total”和“free”)该怎样编写,这儿咱们就要用到“grep(过滤)”,管道符号(|)和awk

grep:过滤关键字相对应的行,这儿咱们只看“Mem”

awk:以列为单位读取数据的过滤东西

awk -F其间的(-F)部分用来指定分隔符号【为指守时,就默许以空格或制表符分隔】,这儿咱们正真看到“free”中没有分隔符号 咱们就直接awk后边跟空格就能够了。

awk '{prin $2}':这是固定格局 .这儿$2标明free里的total地址的那列,你想用那以列就在"$"后边写数字几。可是咱们这儿榜首列是从Mem开始算起 不要搞稠浊了。

shell脚本根底小习题(二)

4:咱们开始要想想 改用怎样样的核算方法在shell中把占用率闪现出来 不可能像咱们早年用手写或用核算器那样直接敲数字核算{(135276除以1867024)再乘以100 }得出作用,用shell的数值变量运算时不支撑小数运算的,我是这样想的能够先把"free"乘以100 再除以“total”也便是($a * 100 / $b)

shell脚本根底小习题(二)

shell脚本根底小习题(二)

由于我现在的free变了所以作用是这

shell脚本根底小习题(二)