使用 cut 命令显示 ping 时间

使用 cut 命令显示 ping 时间
64 bytes from 8.8.8.8: icmp_seq=1 ttl=52 time=1.04 ms

上面我对我的 IP 地址进行了 ping,如何使用 cut 命令或任何其他命令来仅显示以毫秒为单位的时间,如下所示

time=1.04 ms

答案1

cut

echo "64 bytes from 8.8.8.8: icmp_seq=1 ttl=52 time=1.04 ms" | cut -d' ' -f7
time=1.04

ping

ping google.com | cut -d ' ' -f8

time=19.8
time=20.6
time=20.1
time=19.10

答案2

一种选择是使用awk

$ ping localhost | awk '{ print $7, $8 }'

time=0.037 ms
time=0.113 ms
time=0.085 ms
time=0.070 ms
time=0.060 ms
time=0.055 ms
time=0.046 ms
time=0.072 ms

我在这里使用awk打印第七和第八个空格分隔列的内容。请注意,开头有一个空行;该行:

PING localhost (127.0.0.1): 56 data bytes

没有第七或第八列。如果您 p​​ing 有另一列(例如ttl),您可能需要将列号从 7 和 8 调整为 8 和 9。

相关内容