我正在编写一个简单的脚本来检索以IP格式提供的本地主机地址。
要获取我的IPv4地址(Win7)我已经编写了简单的FOR循环,但结果我从最后一个循环而不是第一个获取IP
以下是批次代码:
cls
for /f "tokens=1-2 delims=:" %%a in ('ipconfig^|find "IPv4"') do (
set ip=%%b
)
set ip=%ip:~1%
echo %ip%
返回:
(set ip= 192.168.1.101 )
(set ip= 192.168.88.1 )
(set ip= 192.168.137.1 )
set ip=192.168.137.1
echo 192.168.137.1
192.168.137.1
我需要的是第一次循环的结果:
192.168.1.101
答案 0 :(得分:1)
那么没有任何循环的代码呢?
@Echo off
For /f "tokens=2 delims= " %%a in ('arp -a ^|findstr /i "Interface"') do (set IP=%%a)
Echo The IP adress is : %IP%
pause
答案 1 :(得分:1)
还使用@aschipfl :SKIP
解决方案
for /f "tokens=1-2 delims=:" %%a in ('ipconfig^|find "IPv4"') do (
set ip=%%b
goto :SKIP
)
:SKIP
set ip=%ip:~1%
echo %ip%