Se você insistir em awk
, poderá fazer:
$ ping -c 4 google.com |
awk -F "[= ]" '$2=="bytes"{print ++c "\t" $(NF-1)/1000 }'
1 0.0361
2 0.036
3 0.0357
4 0.0363
Pessoalmente, eu faria isso usando grep
e só usaria awk
para multiplicar os milissegundos por 1000:
$ ping -c4 google.com | grep -Po 'time=\K[\d.]+' | awk '{print NR,$1/1000}'
1 0.0357
2 0.0364
3 0.0364
4 0.0364
Ou Perl:
$ ping -c4 google.com | perl -lne '/time=([\d.]+)/ && print ++$c,"\t",$1/1000'
1 0.0361
2 0.0357
3 0.0363
4 0.0361
Para salvar a saída em um arquivo, basta usar o redirecionamento. Adicione > outfile
a qualquer um dos comandos acima:
ping -c4 google.com | perl -lne '/time=([\d.]+)/ && print ++$c,"\t",$1/1000' > outfile