LINUX.ORG.RU

помогите с фильтром


0

1

Алоха то Алл !
Пишу один скриптик который будет пинговать айпи адрес и отправлять всё в файл,а после хочется чтобы мне выводились только ошибки типа:
«Destination Host Unreachable»
Это можно сотворить с помощью «grep»
Но ещё мне нужно показать время которое отправляется в этот же файл
«Mon Nov 29 12:11:53 AZT 2010»
Какой оператор использовать ?
Всё это выгдядит вот так :


##############################################################################

Mon Nov 29 12:11:53 AZT 2010
PING 192.168.234.4 (192.168.234.4) 56(84) bytes of data.
64 bytes from 192.168.234.4: icmp_seq=1 ttl=64 time=0.414 ms
64 bytes from 192.168.234.4: icmp_seq=2 ttl=64 time=0.553 ms
64 bytes from 192.168.234.4: icmp_seq=3 ttl=64 time=0.494 ms


--- 192.168.234.4 ping statistics --- 3 packets transmitted, 3 received, 0% packet loss, time 2001ms
rtt min/avg/max/mdev = 0.414/0.487/0.553/0.056 ms
##############################################################################
Mon Nov 29 12:11:53 AZT 2010
PING 192.168.234.19 (192.168.234.19) 56(84) bytes of data.
From 192.168.234.48 icmp_seq=1 Destination Host Unreachable
From 192.168.234.48 icmp_seq=2 Destination Host Unreachable
From 192.168.234.48 icmp_seq=3 Destination Host Unreachable

--- 192.168.234.19 ping statistics ---
3 packets transmitted, 0 received, +3 errors, 100% packet loss, time 1999ms
, pipe 3
##############################################################################
Нужно сделать так чтобы когда скрипт увидел ошибку,вывелбы и время
Надеюсь вы поняли чего я хочу =)

Ответ на: комментарий от alikhantara

Ого. Значит не повезло с ОС. Тогда только парсить руками. Или привязаться к контексту. Например для твоего файла можно сделать

cat file-with-pings | grep Destin -B 3 | grep PING -B 1 | grep -v PING
baverman ★★★ ()

Если правильно понял,

$ date >> file && ping -c 3 google.com 1>> file

hunt ()
Ответ на: комментарий от alikhantara

Мне нужно чтобы вышло что нибудь вроде этого:
Mon Nov 29 12:11:53 AZT 2010
From 192.168.234.48 icmp_seq=1 Destination Host Unreachable

alikhantara ()
Ответ на: комментарий от alikhantara

Для начала, тебе нужно формализовать задачу, если нужно собрать время, когда хост не пинговался, то это простой периодический вызов

ping -c1 192.168.0.4 &> /dev/null || date

С перенаправлением в файл.

baverman ★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.