0

IPアドレスが空白または欠落していないかどうかを確認するためにバッチファイルが必要です。バッチファイルがWindows7で実行されることもあれば、WindowsXPで実行されることもあります。だから私はこの種の出力が必要です。

欠落していないか空白でない場合"あなたのIPは%ip%です、すべてが大丈夫です

欠落または空白の場合「エラーNoipfound」

Connection-specific DNS Suffix  . : dxtnxx.naits.local
IP Address. . . . . . . . . . . . : 11.73.11.111
Subnet Mask . . . . . . . . . . . : 255.255.254.0
IP Address. . . . . . . . . . . . : fe80::21b:77ff:fec3:f95b%5
Default Gateway . . . . . . . . . : 10.11.11.1
4

2 に答える 2

2

これを試して:

@echo off &setlocal
for /f "tokens=2delims=[]" %%a in ('ping -n 1 -4 %computername% ^| find /i "%computername%"') do set "ip=%%a"
if "%ip%"=="127.0.0.1" set "ip="
if not defined ip (echo.Error No ip found) else echo.your ip is %ip%, Everything is ok
endlocal
于 2013-03-21T10:22:52.750 に答える
0
for /f "tokens=2 delims={}" %%I in (
    'wmic nicconfig where ipenabled^="TRUE" get ipaddress /format:list'
) do set "ip=%%~I"

if "%ip:~0,7%" equ "169.254" set ip=
if "%ip:~0,2%" equ "0." set ip=

if not defined ip (
    echo Error: No Internet access.
    exit /b 1
)
echo Your IP address is %ip%.  We're good to go.

mfm4aaが指摘しているように、XP Homeにはが含まれていないため、このスクリプトはXPHomeでは機能しませんwmic。ただし、XPProは問題ないはずです。

このスクリプトは、マシンにIPアドレスがあるかどうかを確認するだけでなく、IPアドレスが169.254自動構成アドレスであるかどうかも確認し、それに応じて失敗します。

于 2013-03-21T13:00:21.297 に答える