Сохранить вывод Ping в текстовом файле
Мне часто приходится пинговать серверы за статусом подключения. Есть ли способ сохранить результаты пинга (вывод) в текстовом файле, чтобы я мог сохранить результаты пинга за весь день в текстовом файле.
Я использую Windows XP SP3.
Используйте перенаправление, например:
Это перенаправит весь (стандартный) вывод из программы в filename.txt , который будет создан, если он не существует, и перезаписан, если он существует.
Вы можете использовать >> вместо > перенаправления вывода в файл и добавления результатов в конец файла, вместо перезаписи (спасибо @Jane T за напоминание) .
Обратите внимание, что вы не получите нормальный вывод на экран, если вы сделаете это.
Обновление в ответ на комментарий
Чтобы задержать пинг и записывать время каждого из них, вы можете сделать несколько сценариев.
Вот быстрый пакетный файл Windows, который я создал вместе. Он печатает время, пингует Google, затем ждет 3 секунды, а затем повторяется. Я не специалист по пакетным файлам, поэтому, если кто-то обнаружит какие-либо проблемы, отметьте их! И это, вероятно, не самый лучший способ достичь того, чего вы хотите, — это могло бы сделать действительно отдельный вопрос.
Сохраните это .bat где-нибудь в файле, отредактируйте цель ping и время задержки, как вам нужно, затем запустите .bat перенаправление using, чтобы перекачать вывод всей вещи в файл.
Обратите внимание, что этот пакетный файл никогда не заканчивается , но может быть завершен с помощью Ctrl +, C а затем Y при запуске из cmd . (Вы должны нажать Y, потому что он спросит, хотите ли вы остановить пакетный файл — даже если вы не видите вопрос, потому что вы перенаправили вывод!)
Как сохранить в текстовый файл вывод командной строки Windows

Командная строка — неизменный компонент любой операционной системы Windows, который берет свое происхождение прямиком от её предка — операционной системы MS-DOS. Данная программа имеет довольно широкие возможности, но сейчас мы поговорим о довольно примитивной вещи — сохранение (по факту — перенаправление) вывода командной строки в текстовый файл.
Использование перенаправления выполнения команд
В случае, если необходимо просто сохранить все, что вывела командная строка в текстовый файл, то нужно после введенной команды добавить символ «>», что приведет к созданию текстового файла и весь вывод командной строки отправится туда. Пример:

Как видно, командная строка не вывела никакого результата введенной команды на экран, но зато сохранила все в файл ping.txt. К сожалению, существуют ограничения перенаправления вывода, которые не позволяют одновременно отображать вывод и в окне командной строки, и сохранять их в текстовый файл. Однако, можно воспользоваться хитростью — сразу по завершению выполнения команды вывести содержимое текстового файла на экран с помощью команды type. Получится что-то следующее:

Если требуется файл не записывать (существующий текстовый файл будет перезаписан), а дописывать (существующий текстовый файл будет дополнен), нужно вместо одного символа «>» использовать два — «>>».
В случае, если в текстовый файл нужно сохранить так же какой-то текст (например, в составе bat файла), то можно воспользоваться комбинацией с командой echo:
Save Ping Output in a text file
I often have to ping servers for connectivity status. Is there a way to save the ping results (output) in a text file so that I can save entire day’s ping results in a text file.
I am using Windows XP SP3.
8 Answers 8
Use redirection, for example:
This will redirect all (standard) output from the program into filename.txt , which will be created if it doesn’t exist and overwritten if it does.
You can use >> instead of > to redirect the output to a file and append the results to the end of the file, instead of overwriting (with thanks to @Jane T for the reminder).
Note that you will not receive the normal on-screen output if you do this.
Update in response to comment
To delay between pings and record the time of each, you can do some scripting.
Here is a quick Windows batch file I’ve thrown together. It prints the time, pings Google, then waits for 3 seconds before repeating itself. I’m not a batch file expert so if anyone spots any problems please flag them up! And this probably isn’t the "best" way to achieve what you are after — that might make for a separate question really.
Save this in a .bat file somewhere, edit the ping target and delay time as you need it, then run the .bat using redirection to pump the output of the whole thing to a file. You may need to replace the sleep -m 3000 command with timeout /T 3 depending on your Windows version.
Note that this batch file never ends, but can be terminated by Ctrl + C and then Y if run from cmd . (You must press Y because it asks if you want to stop the batch file — even though you cannot see the question because you’ve redirected the output!)