Windowsで時刻表示+ping監視するスクリプトを仕込む
Windows環境からある特定のサーバへのネットワークが不安定だったので、pingを実行しつづけてその結果をファイル出力するスクリプトを仕込んでみた。
以下のような10回pingをうち30秒スリープする、を無限に繰り返すバッチファイルを作り、リダイレクトするというとても単純なもの(www.google.comは適宜監視対象サーバホストに変更する)。
mon_ping.bat
@echo off :LOOP echo ---- %date%-%time% ---- ping -n 10 www.google.com sleep 30 GOTO LOOP
これをコマンドプロンプトから、ファイルにリダイレクトして実行してやる。
mon_ping.bat > ping.out
ping.outには以下のように記録される。
---- 2015/01/20-16:28:22.70 ---- www.google.com [74.125.235.113]に ping を送信しています 32 バイトのデータ: 74.125.235.113 からの応答: バイト数 =32 時間 =2070ms TTL=54 74.125.235.113 からの応答: バイト数 =32 時間 =3441ms TTL=54 74.125.235.113 からの応答: バイト数 =32 時間 =2828ms TTL=54 74.125.235.113 からの応答: バイト数 =32 時間 =3160ms TTL=54 要求がタイムアウトしました。 74.125.235.113 からの応答: バイト数 =32 時間 =2507ms TTL=54 要求がタイムアウトしました。 74.125.235.113 からの応答: バイト数 =32 時間 =3326ms TTL=54 74.125.235.113 からの応答: バイト数 =32 時間 =1978ms TTL=54 要求がタイムアウトしました。 74.125.235.113 の ping 統計: パケット数: 送信 = 10、受信 = 7、損失 = 3 (30% の損失)、 ラウンド トリップの概算時間 (ミリ秒): 最小 = 1978ms、最大 = 3441ms、平均 = 2758ms ---- 2015/01/20-16:29:25.73 ---- www.google.com [74.125.235.113]に ping を送信しています 32 バイトのデータ: 74.125.235.113 からの応答: バイト数 =32 時間 =111ms TTL=54 74.125.235.113 からの応答: バイト数 =32 時間 =109ms TTL=54 74.125.235.113 からの応答: バイト数 =32 時間 =69ms TTL=54 74.125.235.113 からの応答: バイト数 =32 時間 =94ms TTL=54 74.125.235.113 からの応答: バイト数 =32 時間 =237ms TTL=54 74.125.235.113 からの応答: バイト数 =32 時間 =113ms TTL=54 74.125.235.113 からの応答: バイト数 =32 時間 =110ms TTL=54 74.125.235.113 からの応答: バイト数 =32 時間 =111ms TTL=54 74.125.235.113 からの応答: バイト数 =32 時間 =133ms TTL=54 74.125.235.113 からの応答: バイト数 =32 時間 =121ms TTL=54 74.125.235.113 の ping 統計: パケット数: 送信 = 10、受信 = 10、損失 = 0 (0% の損失)、 ラウンド トリップの概算時間 (ミリ秒): 最小 = 69ms、最大 = 237ms、平均 = 120ms
止めるときはCtrl-Cで。とても単純だが、目的はとりあえず果たせるのでよしとする。