プロが教える店舗&オフィスのセキュリティ対策術

複数台のマシン(PC,Unix)の死活監視を行なうDOSのバッチを作成しようとしています。
バッチの内容としては、
・管理用PCから、それぞれの監視対象マシンに対して PINGを発行し、レスポンスがあれば(0%lossの場合) OKを表示し、レスポンスが無ければ(100%lossの場  合)NGを表示するという簡単なものを考えています。
しかしながら、PINGの結果からfindでlossの行を抜き出したまでは良いのですが、"0%loss"を変数に入れて
判定するところが、うまくいきません。

ping ※※.※※※.※※.※ | find "loss" > temp.$$$
temp.$$$から"0%loss"もしくは、"100%loss"を抜き出し、変数に入れて、
if "%%a" == "(0% loss)" goto OK
:OK
echo OK
の様にしたいと思っています。

お手数ですが、ご存知の方が居られましたら教えてください。
よろしくお願いします。

A 回答 (1件)

「0%」も「100%」も、「0%」という部分を持っていますので、判定するなら


「100%ならばNG」のようにしないとダメじゃないですか?
はずしてたらごめんなさい。
    • good
    • 0
この回答へのお礼

早速の回答、ありがとうございました。
また、テキスト(temp.$$$)からの抽出方法について、更なるアドバイスがございましたら、お願いします。
ちなみに、
for /F "tokens=* delims=" %%a .....
set words=%%A:~43,7%
のような感じで抽出しようとしています。

お礼日時:2004/11/02 16:17

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!