0

バッチ コマンドで if else ステートメントを使用すると問題が発生します。Windows XP を実行しています。正常に動作するIPアドレスを出力するための簡単なバッチファイルを作成しました。ただし、表示するIPアドレスがない場合は、「IPアドレスが見つかりません」と含めたいと思います。ここで同様の質問を見てきましたが、これに対する解決策が見つかりません。

これが私が持っているコードです(IPアドレスがある場合は正常に機能します)

@echo off
color 02
mode con:cols=60 lines=3
Title What's my ip?
:start
echo.
echo                   Here is your ip address!
ipconfig > nul
ipconfig > nul
ipconfig > nul
cls
echo.
ipconfig | find "IP Address"
ipconfig > nul
ipconfig > nul
ipconfig > nul
ipconfig > nul

どんな助けでも大歓迎です。ありがとう。

4

2 に答える 2

1

結果が見つからない場合、find はゼロ以外の戻り値を返します。次のようなものを試してください

ipconfig | find "IP Address" || echo No IP found

補足として、スクリプトは私の Win7 インストールでは機能しません。文字列「IPv4-Adresse」または「IPv6-Adresse」を検索する必要があります。find "IP"もう少し一般的かもしれません。

于 2012-10-03T21:48:23.070 に答える