如何在awk中将搜索模式打印为列

时间:2018-01-29 08:30:53

标签: awk

我有一个输入文件,其中收集了来自不同虚拟机的/proc/meminfo个结果。现在我需要在摘要表中编译结果。

Exmaple:预期输出

MemAvailable    MemFree
1234            223
2345            231
2312            229
9822            3466
5689            2376

我尝试使用以下逻辑并意识到它不正确,有人可以帮我纠正吗?

awk '/MemAvailable/{memA=$2;next} /MemFree/{memF=$2;next} {print memA,memF}' input_file

注意:输入数据可以通过运行cat /proc/meminfo两次或三次来生成。

1 个答案:

答案 0 :(得分:1)

如果我正确理解了您的问题,您想要从名为/proc/meminfo的文件中打印可用内存和总内存信息的值 以下内容可以帮助您。

awk 'BEGIN{print "MemAvailable\tMemFree"}/MemTotal/{val=$2;next} /MemFree/{print val,$2}' OFS="\t\t" /proc/meminfo