Linux 使用fping提取平均时间
我想使用fping提取平均时间Linux 使用fping提取平均时间,linux,bash,awk,grep,ping,Linux,Bash,Awk,Grep,Ping,我想使用fping提取平均时间 fping-q-b12-c3本地主机192.168.0.20 192.168.0.1 192.168.0.18 192.168.0.22 例如,每个设备的平均输出应该是(-1,如果设备不可访问) 0.07 -1 2.57 -1 0.16 感谢使用awk: fping -b 12 -c 3 localhost 192.168.0.20 192.168.0.1 192.168.0.18 192.168.0.22 | awk -F'/' '{print ($8?
fping-q-b12-c3本地主机192.168.0.20 192.168.0.1 192.168.0.18 192.168.0.22
例如,每个设备的平均输出应该是(-1,如果设备不可访问)
0.07
-1
2.57
-1
0.16
感谢使用awk:
fping -b 12 -c 3 localhost 192.168.0.20 192.168.0.1 192.168.0.18 192.168.0.22 |
awk -F'/' '{print ($8?$8:"-1")}'
0.07
-1
2.57
-1
0.16
指定/
作为字段分隔符,如果第8个字段存在,则打印该字段,否则使用awk打印字符串-1
:
fping -b 12 -c 3 localhost 192.168.0.20 192.168.0.1 192.168.0.18 192.168.0.22 |
awk -F'/' '{print ($8?$8:"-1")}'
0.07
-1
2.57
-1
0.16
$ ... | awk -F/ '{print (/avg/?$(NF-1):-1)}'
将/
作为字段分隔符,如果第8个字段存在,则打印该字段,否则打印字符串-1
$ ... | awk -F/ '{print (/avg/?$(NF-1):-1)}'
搜索“avg”关键字,如果找到打印倒数第二个字段,否则为-1
搜索“avg”关键字,如果找到打印倒数第二个字段,否则为-1。不起作用,我忘记添加-q(安静)参数。还尝试了fping-q-b12-c3localhost 192.168.0192.168.0.1192.168.0.18192.168.0.22>>output.ping。但是文件是空的.fping-q-b12-c3 localhost 192.168.0192.168.0.1192.168.0.18192.168.0.22>&1 | awk-F'/'''''''{print($8?$8:“-1”)}。似乎有效。还有其他方法吗?不起作用,我忘了添加-q(quiet)参数。还尝试了fping-q-b12-c3localhost 192.168.0192.168.0.1192.168.0.18192.168.0.22>>output.ping。但是文件是空的.fping-q-b12-c3 localhost 192.168.0192.168.0.1192.168.0.18192.168.0.22>&1 | awk-F'/'''''''{print($8?$8:“-1”)}。似乎有效。是否有其他方法。虽然此代码可以回答问题,但提供关于如何和/或为什么解决问题的附加上下文将提高答案的长期价值。虽然此代码可以回答问题,但提供关于如何和/或为什么解决问题的附加上下文将提高答案的长期价值。