Board logo

标题: [网络连接] [已解决]批处理怎样获取到内网IP? [打印本页]

作者: 珠七七    时间: 2011-10-4 15:45     标题: [已解决]批处理怎样获取到内网IP?

本帖最后由 珠七七 于 2011-10-16 03:33 编辑

最近工作上遇到的问题,想问问大家.
  1. @echo off
  2. for /f "tokens=2 delims=:" %%i in ('ipconfig^|findstr "Address"') do set ip=%%i
  3. C:\temp\select\select.bat +%ip%
复制代码
以上代码是从网上抄下来的,但是效果不行.
要求是获取到本机本地连接IP,获后进入到C:\temp\select\目录,再运行select.bat.
运行的时候select.bat(空格)+获取到IP.比如select.bat 172.168.1.1
作者: Batcher    时间: 2011-10-4 18:37

具体是哪里不行?
作者: 珠七七    时间: 2011-10-5 23:19

可以获取到IP,但是C:\temp\select\目录,再运行select.bat 172.168.1.1会提示错误的.
我怀疑的就是这句出了问题.
  1. C:\temp\select\select.bat +%ip%
复制代码
不知道正确的语法是怎样呢?
作者: Batcher    时间: 2011-10-5 23:43

回复 3# 珠七七


为什么要写一个加号呢?
select.bat的内容能贴到顶楼看看吗?
作者: 珠七七    时间: 2011-10-15 06:50

已经找到答案了.以下是解决工作问题的答案.
  1. @echo off
  2. if exist ipconfig.txt del ipconfig.txt
  3. if exist ip.txt del ip.txt
  4. ipconfig /all>ipconfig.txt
  5. find "IP Address. . . . . . . . . . . . : 1" ipconfig.txt>ip.txt
  6. for /f "delims=: tokens=2" %%i in (ip.txt) do set ip=%%i
  7. select.bat%ip%>result.txt
  8. del ipconfig.txt
  9. del ip.txt
  10. pause
复制代码
谢谢!
作者: awk    时间: 2011-10-16 09:02

回复 5# 珠七七
  1. @echo off
  2. for /f "tokens=15" %%a in ('ipconfig^|findstr /c:"IP Address"') do (
  3.     set IP=%%a
  4. )
  5. select.bat%IP%>result.txt
复制代码





欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2