【发布时间】:2019-10-02 21:40:29
【问题描述】:
我正在尝试从以下文件中提取以下输出:
xr_lab# show clock
Thu Sep 19 14:38:02.812 WIB
14:38:02.893 WIB Thu Sep 19 2019
xr_lab#
xr_lab#
xr_lab#show memory compare report
Thu Sep 19 14:41:08.084 WIB
PID NAME MEM BEFORE MEM AFTER DIFFERENCE MALLOCS-NEW
-------------------------------------------------------------------------------
6777 ospf 24292985 24293753 768 272634
7582 mibd_interface 8670334 8484152 -186182 267657
xr_lab#show clock
Thu Sep 19 14:42:42.425 WIB
14:42:42.497 WIB Thu Sep 19 2019
xr_lab#
xr_lab#
xr_lab#show memory compare report
Thu Sep 19 14:45:42.091 WIB
PID NAME MEM BEFORE MEM AFTER DIFFERENCE MALLOCS-NEW
-------------------------------------------------------------------------------
6777 ospf 24294569 24283592 -10977 227389
7582 mibd_interface 8369050 8514825 145775 126259
期望的输出
PID NAME MEM BEFORE MEM AFTER DIFFERENCE MALLOCS-NEW
-------------------------------------------------------------------------------
7582 mibd_interface 8670334 8484152 -186182 267657
7582 mibd_interface 8369050 8514825 145775 126259
7582 mibd_interface 8446906 8264885 -182021 322280
7582 mibd_interface 8264884 8264960 76 284409
-------------------------------------------------------------------------------
-222352 <time difference>
这是我目前所拥有的。
$ awk '/PID/{print;getline;print;exit} /mibd_interface/' snmpoutput.txt
PID NAME MEM BEFORE MEM AFTER DIFFERENCE MALLOCS-NEW
-------------------------------------------------------------------------------
7582 mibd_interface 8670334 8484152 -186182 267657
PID NAME MEM BEFORE MEM AFTER DIFFERENCE MALLOCS-NEW
-------------------------------------------------------------------------------
7582 mibd_interface 8369050 8514825 145775 126259
PID NAME MEM BEFORE MEM AFTER DIFFERENCE MALLOCS-NEW
-------------------------------------------------------------------------------
7582 mibd_interface 8446906 8264885 -182021 322280
PID NAME MEM BEFORE MEM AFTER DIFFERENCE MALLOCS-NEW
-------------------------------------------------------------------------------
7582 mibd_interface 8264884 8264960 76 284409
$ awk '/show clock/{getline;print}' snmpoutput.txt
Thu Sep 19 14:38:02.812 WIB <<<< capture this line
Thu Sep 19 14:42:42.425 WIB
Thu Sep 19 14:46:15.895 WIB
Thu Sep 19 14:50:44.213 WIB <<<< capture this line
$ awk '/mibd_interface/{x+=$5} END {print x}' snmpoutput.txt
-222352
我想要一些关于如何将这些部分连接在一起的指导。不一定要寻找解决方案,而是围绕逻辑寻求帮助。
谢谢。
【问题讨论】:
-
很好,您已经展示了您的尝试,您在代码标签中的预期输出,请在您的帖子中的代码标签中发布示例输入,然后让我们知道。
-
嗨@RavinderSingh13,帖子已更新。