Страница 1 из 1

Подсчет Internet Hops

Добавлено: 2014-12-10 9:59:32
orachimary
Привет всем. Прошу вашей помощи. В программировании не очень силен. Ситуация следующая, хочу считать количество хопов в выводе 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

Re: Подсчет Internet Hops

Добавлено: 2014-12-10 14:14:08
lazhu
Писать в файл:

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

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

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

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

Re: Подсчет Internet Hops

Добавлено: 2014-12-11 7:13:32
orachimary
А если необходимо для 20 хостов считать и каждые 5 минут?

Re: Подсчет Internet Hops

Добавлено: 2014-12-11 10:30:56
Neus

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

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