从ping -c中提取平均时间

cre*_*Dev 13 linux bash awk ping

我想从命令中提取ping -c 4 www.stackoverflow.com | tail -1| awk '{print $4}' 平均时间.

107.921/108.929/110.394/0.905 ms
Run Code Online (Sandbox Code Playgroud)

输出应该是: 108.929

Bug*_*ill 35

一种方法是只为你在那里添加一个切口.

ping -c 4 www.stackoverflow.com | tail -1| awk '{print $4}' | cut -d '/' -f 2
Run Code Online (Sandbox Code Playgroud)

  • @jack:在获得实际数据至少四秒后,此管道中的小开销可能永远不会重要. (6认同)

raj*_*raj 7

ping -c 4 www.stackoverflow.com | tail -1| awk -F '/' '{print $5}' 会工作得很好.

"-F"选项用于指定字段分隔符.

  • 你可以删除`tail`:`ping -c 4 www.stackoverflow.com | awk -F'/''END {print $ 5}'` (2认同)

pot*_*ong 5

这可能对你有用:

ping -c 4 www.stackoverflow.com | sed '$!d;s|.*/\([0-9.]*\)/.*|\1|'
Run Code Online (Sandbox Code Playgroud)