awk命令使用
作者:互联网
环境:centos7
1、awk直接筛选列
[sanhlt@k8s-master ~]$ free -g total used free shared buff/cache available Mem: 3 1 1 0 0 1 Swap: 0 0 0 [sanhlt@k8s-master ~]$ free -g|awk '{print $2}' used 3 0
2、awk筛选字段并输出列值(查询文本 /proc/meminfo中MemTotal的第二列)
[sanhlt@k8s-master ~]$ cat /proc/meminfo|grep MemTotal MemTotal: 3882032 kB [sanhlt@k8s-master ~]$ awk '/MemTotal/{print $2}' /proc/meminfo 3882032
3、可以对筛选的值做赋值运算(将结果赋值给total)注意:END必须大小
[sanhlt@k8s-master ~]$ awk '/MemTotal/{total=$2}END{print total}' /proc/meminfo 3882032
4、可以进行精确匹配进行筛选(awk取以Cache开头的字段 ,使用符号^开头
[sanhlt@k8s-master ~]$ cat /proc/meminfo |grep Cached Cached: 415684 kB SwapCached: 0 kB [sanhlt@k8s-master ~]$ cat /proc/meminfo |grep Cached|awk '/^Cached/{print $2}' 415848
5、可以将结果进行计算输出(计算服务器剩余内存,计算应用可以使用的内存)
[sanhlt@k8s-master ~]$ awk '/MemTotal/{total=$2}/MemFree/{free=$2}END{print (total-free)/1024}' /proc/meminfo 2075.58 [sanhlt@k8s-master ~]$ awk '/MemTotal/{total=$2}/MemFree/{free=$2}/^Cached/{cache=$2}/Buffers/{buffer=$2}END{print (total-free-cache-buffer)/1024}' /proc/meminfo 1595.87
标签:total,meminfo,使用,命令,sanhlt,master,awk,k8s 来源: https://www.cnblogs.com/wukc/p/14615906.html