В командной строке Windows cmd
я используюping -t to 10.21.11.81
Reply from 10.21.11.81: bytes=32 time=3889ms TTL=238
Reply from 10.21.11.81: bytes=32 time=3738ms TTL=238
Reply from 10.21.11.81: bytes=32 time=3379ms TTL=238
Есть ли возможность получить такой результат?
10:13:29.421875 Reply from 10.21.11.81: bytes=32 time=3889ms TTL=238
10:13:29.468750 Reply from 10.21.11.81: bytes=32 time=3738ms TTL=238
10:13:29.468751 Reply from 10.21.11.81: bytes=32 time=3379ms TTL=238
Обратите внимание, что я хочу добиться этого только с помощью команд, предоставляемых CMD.
Ответы:
@echo off ping -t localhost|find /v ""|cmd /q /v:on /c "for /l %%a in (0) do (set "data="&set /p "data="&if defined data echo(!time! !data!)"
примечание : код для использования внутри командного файла. Чтобы использовать из командной строки, замените
%%a
на%a
Запустите эхо-запрос, принудительно установите правильный строковый буферизованный вывод (
find /v
) и запуститеcmd
процесс с включенным отложенным расширением, который будет выполнять бесконечный цикл чтения передаваемых по конвейеру данных, которые будут отображаться на консоль с префиксом текущего времени.2015-01-08 отредактировано : В более быстрых / новых машинах / версиях ОС существует проблема синхронизации в предыдущем коде, что заставляет
set /p
читать строку, покаping
команда все еще записывает ее, и результатом является обрезание строки.@echo off ping -t localhost|cmd /q /v /c "(pause&pause)>nul & for /l %%a in () do (set /p "data=" && echo(!time! !data!)&ping -n 2 localhost>nul"
В
pause
начале подоболочки включены две дополнительные команды (можно использовать только одну, но поскольку онаpause
потребляет входной символ, пара CRLF разрывается и строка с LF читается) для ожидания входных данных, аping -n 2 localhost
в подождите секунду для каждого чтения во внутреннем цикле. Результат - более стабильное поведение и меньшая загрузка ЦП.ПРИМЕЧАНИЕ. Внутренний
ping
элемент можно заменить на apause
, но тогда первый символ каждой прочитанной строки будет поглощенpause
и не полученset /p
источник
echo
команду наecho(!date! !time! !data!
ping.bat
илиping.cmd
?WindowsPowershell:
Опция 1
вариант 2
источник
Test-Connection -Count 9999 | Format-Table @{Name='TimeStamp';Expression={Get-Date}},Address,ProtocolAddress,ResponseTime
> C:\temp\ping.txt
перенаправляет вывод в файл. Если вы хотите также видеть вывод в реальном времени, просто выполнитеGet-Content C:\temp\ping.txt -tail 10 -wait
в другой PowerShell.Вы можете сделать это в Bash (например, Linux или WSL):
Хотя он не дает той статистики, которую вы обычно получаете, нажимая ^ C в конце.
источник
date +%s
более полезен, поскольку показывает целочисленные временные метки.Пакетный скрипт:
Этот скрипт спросит, с какого хоста пинговать. Вывод Ping выводится на экран и в файл журнала. Пример вывода файла журнала:
Файл журнала называется LOG_ [имя хоста] .log и записывается в ту же папку, что и сценарий.
источник
Это может кому-то помочь: [необходимо запускать в Windows PowerShell]
- Проверьте наличие файла Ping_IP.txt в текущем каталоге или домашнем пути пользователя.
Команда выше дает вам вывод в файл, как показано ниже;
источник
В Windows
Вы можете использовать один из других ответов.
В Unix / Linux
Или как функция
pingt
для вашего ~ / .bashrc:источник: https://stackoverflow.com/a/26666549/1069083
источник
-w
недопустимый вариантping
.Я думаю, что мой код - это то, что нужно всем:
для отображения:
примечание : код, который будет использоваться внутри командной строки, и у вас должен быть предварительно установлен powershell в os.
источник
Это может соответствовать требованиям для более поздних версий Windows:
источник
Попробуй это:
Создайте командный файл со следующим:
Вы можете добавить свои собственные параметры к команде ping в зависимости от ваших требований. Это не помещает отметку времени в той же строке, что и пинг, но по-прежнему дает вам необходимую информацию.
Еще лучший способ - использовать fping, перейдите сюда http://www.kwakkelflap.com/fping.html, чтобы загрузить его.
источник
Использовать
Со страницы руководства
Вывод
источник
Еще один метод PowerShell (мне нужны были только неудачи)
источник
Мне также это нужно, чтобы отслеживать проблему с сетью, связанную с тайм-аутом зеркального отображения базы данных. Я использую код команды, как показано ниже:
Вам просто нужно изменить Google.com на имя вашего сервера. У меня он отлично работает. и не забудьте остановить это, когда закончите. Файл pingtest.txt будет увеличиваться на 4,5 КБ в минуту (примерно).
Спасибо за raymond.cc. https://www.raymond.cc/blog/timestamp-ping-with-hrping/
источник
Усовершенствованный ответ MC ND для Windows.
Мне нужен был сценарий для запуска в WinPE, поэтому я сделал следующее:
Это может быть жестко привязано к конкретному IP-адресу (
192.168.1.1
в моем примере) или принимать переданный параметр. И, как в ответе MC ND, повторяет пинг примерно каждую 1 секунду.источник
Просто 😎:
источник
Вместо того, чтобы иметь дополнительный
ping -n 2 localhost
в конце цикла, вы можете просто добавить символ R перед,!data!
поскольку единственные возможности - это Ответ или Запрос. Первый символ потребляется изpause>nul
. Поэтому вместо следующего выражения:Вы можете использовать это выражение:
Что дает тот же результат, например:
источник
Попробуйте вместо этого:
Проверь, подходит ли тебе
источник