找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 32436|回复: 5

[网络连接] [已解决]下面2个通过批处理获取ip地址的方法,功能上有什么区别?

[复制链接]
发表于 2011-12-29 17:05:15 | 显示全部楼层 |阅读模式
本帖最后由 ygqiang 于 2011-12-29 17:37 编辑
  1. @echo off &setlocal enabledelayedexpansion

  2. Rem '/*========获取本机的IP地址(局域网)=========*/
  3. echo 正在获取本机的IP地址,请稍等...
  4. for /f "tokens=3 skip=2 delims=: " %%i in ('nbtstat -n') do (
  5. set "IP_addr=%%i"
  6. set IP_addr=!IP_addr:~1,-1!
  7. echo !IP_addr!
  8. pause
  9. goto :next
  10. )

  11. :next

  12. for /f "tokens=2 delims=:" %%b in ('ipconfig^|find /i "ip"') do set fsip=%%b
  13. echo %fsip%
  14. Set fsip=%fsip: =%
  15. echo 去掉ip前面的空格
  16. echo %fsip%
  17. pause

  18. exit
复制代码
这2个获取ip的批处理,都有什么优缺点(或者说都有什么特殊的要求)?

在xp系统下,哪个通用性比较强?

评分

参与人数 1PB +2 收起 理由
CrLf + 2 感谢给帖子标题标注[已解决]字样

查看全部评分

 楼主| 发表于 2011-12-29 17:20:36 | 显示全部楼层
本帖最后由 ygqiang 于 2011-12-29 17:24 编辑
  1. for /f "tokens=14 delims=: " %%b in ('ipconfig^|find /i "ip"') do set fsip=%%b
  2. echo %fsip%
  3. pause
复制代码
这个获取ip的代码,更简单。而且获取到的ip前面直接就去掉了空格。

不知道这种获取方法,是不是对于所有版本的xp系统,都通用呢?
发表于 2011-12-29 17:29:19 | 显示全部楼层
回复 2# ygqiang


就用这个吧,挺好的。
 楼主| 发表于 2011-12-29 17:38:58 | 显示全部楼层
嗯,感谢楼上。
 楼主| 发表于 2011-12-29 17:43:38 | 显示全部楼层
本帖最后由 ygqiang 于 2011-12-29 23:23 编辑
  1. rem 获取本机ip
  2. for /f "tokens=15 delims= " %%i in ('ipconfig ^| find /i "IP Address"') do (
  3.     set fsip=%%i
  4. )
  5. echo %fsip%
  6. pause

  7. rem 获取本机ip
  8. for /f "tokens=14 delims=: " %%b in ('ipconfig^|find /i "ip"') do set fsip=%%b
  9. echo %fsip%
  10. pause
复制代码
上面2个代码,都能获取到本机ip,在xp系统下运行,会有什么区别呢?
发表于 2011-12-29 19:27:27 | 显示全部楼层
回复 5# ygqiang


既然你自己都说了,都能获取到本机ip,那就是没有区别。

评分

参与人数 1PB +3 收起 理由
CrLf + 3 乐于助人

查看全部评分

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-18 13:25 , Processed in 0.020063 second(s), 9 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表