Достаточно часто нужно отсортировать какой-то список адресов по скорости доступа к ним, что условно можно считать пингом. Вот в данном случае список адресов в full.lst и отсортированный будет в sorted.lst
Код:
#!/bin/bash
cut -f1 -d' 'full.lst | while read ip
do
tt=$( ping -c 3 "$ip" | tail -1 | awk '{print $4}' | cut -d '/' -f 2 )
echo $tt "$ip" >> "/tmp/ipsort.bak"
done
sort -n "/tmp/ipsort.bak" | cut -f2 -d' ' >sorted.lst
rm -f /tmp/ipsort.bak
строго не судите, решение по-быстрому, если у кого-то есть более красивый вариант - прошу поправлять.