Есть ли способ сказать, ping
чтобы показать свою обычную статистику завершения без остановки выполнения?
Например, я хотел бы быстро просмотреть:
--- 8.8.8.8 ping statistics ---
2410 packets transmitted, 2274 received, +27 errors, 5% packet loss, time 2412839ms
rtt min/avg/max/mdev = 26.103/48.917/639.493/52.093 ms, pipe 3
без необходимости останавливать программу, тем самым теряя накопленные данные.
linux
command-line
gnu
ping
2mac
источник
источник
Ответы:
Из
ping
справочной страницы (выделено мое):Так что это сработает, если вы в порядке, если ваша статистика немного менее многословна:
Краткая статистика выглядит так:
источник
SIGQUIT
из терминала, нажимая Ctrl-, не нужно открывать и использовать второй терминалkill
.ping
движением. Я обычно начинаюwhile true; do ps -o "pid" -C "ping" h | xargs kill -SIGQUIT; sleep 20; done &
в первом терминале перед запускомping
. Это позволяет мне запускать новыеping
s и / или перезапускать существующиеping
s (для сброса статистики) и не нужно отслеживатьPID
s дляkill
.& jobs ; fg
часть команды в ответе, поскольку его единственная цель - сообщитьPID
... Извините за дополнительный комментарий - я больше не могу редактировать свой исходный комментарий из-за 5-минутного порога.Есть еще один простой способ получить статистику пинга во время ее выполнения: просто нажмите Ctrl + | (вертикальная черта или это также называется трубопроводом)
Я лично использую это очень часто, попробуйте это:
источник
Ctrl + \
такой же, как комбинация клавиш, упомянутая в других ответах здесь:Ctrl + |
иCtrl + 4
. Все приводят к XLookupString 0x1c, который связан с SIGQUIT, как показаноstty -a
. См. Также сочетания клавиш - Связывание клавиш Shell SIGKILLПопробуй Ctrl+4
Это показывает линию как это:
источник
Если ваш пинг не поддерживает полезный SIGQUIT (AIX, Solaris), вот один из обходных путей - бесконечный цикл пинга, где каждый пинг запускает только (например) 10 пингов, так что вы можете видеть промежуточные результаты.
Чтобы остановить это, Control-Cможет только убить
ping
команду; Возможно, вам придется приостановить, а затем убить работу ( Control-z;kill %
).Это, конечно, не обеспечивает истинную статистику работы - только в течение этих 10 пингов.
источник
Вы можете использовать утилиту для часов
Это будет запускать
ping
команду каждые 3 секунды и непрерывно показывать вам результат.источник
ping
потеряет историю и, следовательно, не даст желаемой информации.На Mac это Ctrl+ T.
Ctrl+ \делает то же самое, что и Ctrl+ C, так как останавливает пинг после отображения статистики.
источник