2016-04-16 4 views
1

私はIPとして与えられたローカルホストアドレスを取得する簡単なスクリプトを書いています。Windows7バッチ、最初のForループ後のブレーク方法

私のIPv4アドレス(win7の)を取得するために私がループするための単純な書きましたが、結果として、私の代わりに最初の1最後のループから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 
+1

ループ、場所 '後藤で' set'コマンドの後@aschipfl :SKIP溶液でコード:SKIP'。 – aschipfl

+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 
+0

テスト済み - 働いています。 @aschipflも解決策を提案したので、あなたの方が短くなりました。私はそれを受け入れたとマークします、ありがとう! –

1

また

for /f "tokens=1-2 delims=:" %%a in ('ipconfig^|find "IPv4"') do (
    set ip=%%b 
    goto :SKIP 
) 
:SKIP 
set ip=%ip:~1% 
echo %ip% 
関連する問題