Подсчет Internet Hops

Программирование на sh, быть может немного про альтернативные языки
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
orachimary
рядовой
Сообщения: 11
Зарегистрирован: 2014-12-10 9:50:41

Подсчет Internet Hops

Непрочитанное сообщение orachimary » 2014-12-10 9:59:32

Привет всем. Прошу вашей помощи. В программировании не очень силен. Ситуация следующая, хочу считать количество хопов в выводе traceroute. Казалось бы простая задача, но не тут то было. Написал такой скриптик:

Код: Выделить всё

#!/bin/sh -
/usr/sbin/traceroute -In $1 | grep -v traceroute | wc -l


ну и запускаем, выводит такое:
    ./inethops.sh ya.ru
    traceroute: Warning: ya.ru has multiple addresses; using 213.180.193.3
    traceroute to ya.ru (213.180.193.3), 64 hops max, 72 byte packets
    5

т.е. вместе с подсчитаным числом хопов выводит системное сообщение
traceroute: Warning: ya.ru has multiple addresses; using 213.180.193.3
traceroute to ya.ru (213.180.193.3), 64 hops max, 72 byte packets

опция grep -v не работает.

Проверил на debian там все корректно отрабатывает.

Подскажите как модифицировать скрипт чтоб выводил только количество хопов.
Использую FreeBSD 10.1 amd64

lazhu
сержант
Сообщения: 176
Зарегистрирован: 2013-08-10 14:28:38
Контактная информация:

Re: Подсчет Internet Hops

Непрочитанное сообщение lazhu » 2014-12-10 14:14:08

Писать в файл:

Код: Выделить всё

traceroute address > out

Число строк может не соответствовать числу прыжков (разные маршруты), поэтому второй строкой

Код: Выделить всё

tail -n 1 out | cut -d ' ' -f 1

orachimary
рядовой
Сообщения: 11
Зарегистрирован: 2014-12-10 9:50:41

Re: Подсчет Internet Hops

Непрочитанное сообщение orachimary » 2014-12-11 7:13:32

А если необходимо для 20 хостов считать и каждые 5 минут?

Neus
капитан
Сообщения: 1718
Зарегистрирован: 2008-09-08 21:59:56

Re: Подсчет Internet Hops

Непрочитанное сообщение Neus » 2014-12-11 10:30:56

Код: Выделить всё

traceroute address | tail -n 1 | cut -d ' ' -f 2


Вернуться в «SHELL»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя