web-dev-qa-db-ja.com

Ping出力をテキストファイルに保存する

接続状況を確認するために、サーバーにpingを実行する必要があることがよくあります。 pingの結果(出力)をテキストファイルに保存する方法を使用して、一日のpingの結果をテキストファイルに保存できます。

Windowsを使用していますXP SP3。

Pingの例:

ping 192.168.1.1 -t 

(using windows' ping)

または

ping 192.168.1.1

(using cygwin)
17
abel

たとえば、リダイレクトを使用します。

ping 192.168.1.1 -t > filename.txt

これにより、プログラムからのすべての(標準)出力がfilename.txtにリダイレクトされます。存在しない場合は作成され、存在する場合は上書きされます。

>>の代わりに>を使用して、出力をファイルにリダイレクトし、append結果をファイルの最後にリダイレクトすることができます。上書きする代わりに(おかげでへ @ Jane T 通知用)

これを行うと、notは通常の画面出力を受け取ります。

コメントに応じて更新

Pingの間隔を空けて、pingの時間を記録するには、スクリプトを実行します。

これは私が一緒に投げた簡単なWindowsバッチファイルです。時間を出力し、Googleにpingしてから、3秒間待ってから自分自身を繰り返します。私はnotバッチファイルのエキスパートです。問題が見つかった場合は、報告してください!そして、これはおそらくあなたが何をしているのかを達成するための「最良の」方法ではありません-それは本当に別の質問になるかもしれません。

@ECHO OFF

:LOOPSTART

time /T
ping www.google.com -n 4
sleep -m 3000

GOTO LOOPSTART

これを.batファイルに保存し、必要に応じてpingターゲットと遅延時間を編集してから、リダイレクトを使用して.batを実行し、すべての出力をファイルに送ります。

このバッチファイルは決して終了しないが、 CtrlC その後 Ycmdから実行した場合。 (あなたmustYを押すと、バッチファイルを停止するかどうかを尋ねられます-出力をリダイレクトしたために質問を表示できない場合でも! )

17
DMA57361

以下を使用できます。

> ping 192.168.1.1 -t > ping-results
3

コマンドプロンプトを使用している場合は、この形式を使用してテキストファイルにリダイレクトするだけです。

ping 192.168.1.1 > ping.txt

それでうまくいきます。

2
danbo

5秒ごとにgoogle.comにpingし、現在の時間で結果をログに記録するスクリプトを作成しました。ここでは、変数「commandLineStr」への出力を見つけることができます(インデックス付き)

@echo off

:LOOPSTART

echo %DATE:~0% %TIME:~0,8% >> Pingtest.log

SETLOCAL ENABLEDELAYEDEXPANSION
SET scriptCount=1
FOR /F "tokens=* USEBACKQ" %%F IN (`ping google.com -n 1`) DO (
  SET commandLineStr!scriptCount!=%%F
  SET /a scriptCount=!scriptCount!+1
)
@ECHO %commandLineStr1% >> PingTest.log
@ECHO %commandLineStr2% >> PingTest.log
ENDLOCAL

timeout 5 > nul

GOTO LOOPSTART
2
Ja Vy

:: 1秒ごとにISPを呼び出し、日付、時刻、結果をテキストファイルに書き込み

@ECHO OFF
:LOOPSTART
date /T >>Pingtest.log
time /T >>Pingtest.log
ping 8.8.8.8 -n 1 >>PingTest.log
sleep -m 1000
GOTO LOOPSTART
1
Desperate Dan

また、pingの結果を表示したい場合は、このコードを使用できます

@ECHO OFF
:LOOPSTART
date /T >>Pingtest.log
time /T >>Pingtest.log
REM this line show you the ping results in display
ping 8.8.8.8 -n 1 

REM this line print the ping results in the log file
ping 8.8.8.8 -n 10 >>PingTest.log
sleep -m 1000
GOTO LOOPSTART
1
JorgeM