Windows7批处理,如何在第一个For循环后中断

标签 windows batch-file command-line terminal

我正在编写一个简单的脚本来检索我作为 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

最佳答案

没有任何循环的这段代码呢?

@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

关于Windows7批处理,如何在第一个For循环后中断,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36666610/

相关文章:

command-line - 如何在 Enterprise Architect 中自动生成 HTML 输出

windows - Qt 4.8.3 Windows 7 使用 Visual Studio Express 2012 编译

c++ - 如何正确更改ListView控件中的焦点项?

php - 检查应用程序在哪个服务器上运行?

batch-file - Sublime Text 构建后不再打开 Stata13

javascript - 如何使用单个批处理文件或 javascript 导入或导出多个 mongo 集合

windows - 命令提示符/批处理 - 使用顺序编号重命名多个文件

debugging - 使用 CURL 调用时在 PhpStorm 中触发 xDebug

c++ - 有符号整数溢出、内在函数和未定义行为

bash - 如何使用 "shell prompt"创建 CLI 程序?