Как я могу отфильтровать результаты ping ко времени?

Я просто использую GREP . Если бы мне было интересно, что вариант , сделала команду , я попробую эти команды в порядке, пока у меня нет ответа:

info read |grep \\-s

man read |grep \\-s

help read |grep \\-s

в этом случае только Информация Команда предоставила четкий ответ. Этот отличный ответ дает детали на различных справочных системах.

0
08.04.2015, 01:35
2 ответа

GREP с расширенным регентом :

ping ... | grep --line-buffered -E 'time=([0-9]{4}|[5-9][0-9]{2})' | ...

Это будет соответствовать любой линии с временем = сразу сразу:

  • любые 4 цифры (1000+ мс).
  • Одна цифра 5-9, а затем любые 2 цифры (500-999 мс).

- Строительные работы работает вокруг вопросов, вызванных GREP . Выходной буферизацией по умолчанию при использовании в цепочке труб. Не нужен, когда GreeP - последняя ссылка в цепочке.

6
28.01.2020, 02:15

Perl Решение:

ping -i "$2" "$1" | while read pong; do echo $(date) "$pong" ; done \
  | perl -ne 'print if (/time=([0-9.]+)/)[0] > .5' >> ~/Downloads/...

Объяснение: - ([0-9.] +) совпадает с десятичным числом после времени = и вспоминает его - (...) [0] возвращает первый элемент данного списка (необходимо переключиться из списка в скаляр)

0
28.01.2020, 02:15

Теги

Похожие вопросы