D4NI3LS
D4NI3LS

Reputation: 315

Extract average time using fping

I want to extract the avg time using fping.

fping -q -b 12 -c 3 localhost 192.168.0.20 192.168.0.1 192.168.0.18 192.168.0.22

localhost    : xmt/rcv/%loss = 3/3/0%, min/avg/max = 
0.06/0.07/0.09
192.168.0.20 : xmt/rcv/%loss = 3/0/100%
192.168.0.1  : xmt/rcv/%loss = 3/3/0%, min/avg/max = 2.00/2.57/3.11
192.168.0.18 : xmt/rcv/%loss = 3/0/100%
192.168.0.22 : xmt/rcv/%loss = 3/3/0%, min/avg/max = 0.12/0.16/0.19

The average output should be of every device(-1 if device is unreachable), for example.

0.07
-1
2.57
-1
0.16

Thanks

Upvotes: 0

Views: 781

Answers (2)

karakfa
karakfa

Reputation: 67497

$ ... | awk -F/ '{print (/avg/?$(NF-1):-1)}'

search for "avg" keyword, if found print penultimate field, otherwise -1.

Upvotes: 0

oliv
oliv

Reputation: 13249

Using 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

Given the / as field delimiter, print the 8th field if it exists otherwise print the string -1

Upvotes: 2

Related Questions