BAT提取IP地址

IPCONF如下显示,我要提取192.168.106.209赋值到一个变量,这个变量在以后会继续用到,如何用BAT文件来提取这个IP地址?WindowsIPConfigu... IPCONF如下显示,我要提取192.168.106.209赋值到一个变量,这个变量在以后会继续用到,如何用BAT文件来提取这个IP地址?
Windows IP Configuration
Ethernet adapter 本地连接 3:
Connection-specific DNS Suffix . :
IP Address. . . . . . . . . . . . : 192.168.106.209
Subnet Mask . . . . . . . . . . . : 255.255.255.0
Default Gateway . . . . . . . . . : 192.168.106.209
PPP adapter CMCC:
Connection-specific DNS Suffix . :
IP Address. . . . . . . . . . . . : 10.72.135.162
Subnet Mask . . . . . . . . . . . : 255.255.255.255
Default Gateway . . . . . . . . . :
终于自已搞出一个方式,但中途要借用生成一个文本文件,大侠帮忙改一下,看看有没有不生成文本文件的方法?
for /f "tokens=2 delims=:" %%i in ('ipconfig^|findstr "IP Address"') do echo %%i>>c:\check.txt
for /f "delims=" %%i in ('find "192" "c:\check.txt"')do set ip=%%i
del c:\check.txt
pause;
展开
 我来答
974199665
2015-10-30 · 知道合伙人数码行家
974199665
知道合伙人数码行家
采纳数:177 获赞数:8528
2016年吉林省数学建模竞赛一等奖 2016年全国大学生数学建模竞赛三等奖 获得国家计算机等级证书

向TA提问 私信TA
展开全部
解决方法
自动获取IP地址.bat
Echo off
echo 自动获取IP地址....
netsh interface ip set address name = "本地连接" source = dhcp
echo 自动获取DNS服务器....
netsh interface ip set dns name = "本地连接" source = dhcp
Echo 自动获取IP成功
快又稳
2024-10-29 广告
虚拟主机域名解析是将注册的域名指向您购买并配置的虚拟主机空间地址的过程。通过DNS(域名系统)服务,用户输入的域名会被转换成对应的IP地址,从而实现网站的访问。这一步骤对于网站的上线至关重要,确保了用户能够通过易记的域名而非复杂的IP地址来... 点击进入详情页
本回答由快又稳提供
xaauygs
2013-03-06 · TA获得超过283个赞
知道小有建树答主
回答量:469
采纳率:0%
帮助的人:169万
展开全部
用这个命令行:ipconfig>d:\ip.txt,就输出内容到D:盘下一个新文件ip.txt里了。
追问
但我需要的不是输出到文件,我的最终目的,是要把192.168.106.209赋值到一个变量,这个变量在BAT文件中还要被引用的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-03-06
展开全部
ipconfig -all >C:\ip.txt

保存到C盘根目录下ip.txt文件
追问
关键是如何把IP地址赋值给一个变量?
追答
这个。。。。我不是学这个的。不晓得具体命令是什么。

你试试判断文件里字段抬头,然后提取指定段落中的一句话看看。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
懂事且健壮灬小喵e
2013-03-06 · TA获得超过756个赞
知道小有建树答主
回答量:575
采纳率:52%
帮助的人:412万
展开全部
for /f "tokens=2 delims=:" %%i in ('ipconfig^|findstr "IP Address"') do (
for /f "delims=" %%i in ("%%i") do set ip=%%i
)
pause
更多追问追答
追问
用你的方法得出的IP是10.72.135.162,前一句找出的是两个IP,192.x.x.x和10.x.x.x,但你在for /f "delims=" %%i in ("%%i") 这里好像没有查找192开头的字符吧? 所以还是没有得出192开头的IP。
追答
@echo off&setlocal  ENABLEDELAYEDEXPANSION
set "Type=本地连接" ::修改这里就行了
set "sign=false"
set "state=false"
for /f "tokens=*" %%i in ('ipconfig') do (
if "!state!"=="true" echo sucess & goto success
if "false"=="!sign!" (
echo %%i|findstr "Ethernet adapter" && echo %%i|findstr "%Type%" && set "sign=true"
) else (
echo %%i|findstr "IP Address" && (set "ip=%%i" & set "state=true")|| (
echo %%i|findstr "Ethernet adapter" && (
echo %%i|findstr "%Type%" || set "sign=false"
)
)
)
) 1>nul 2>nul
:success
for /f "tokens=2 delims=:" %%i in ("!ip!") do set "ip=%%i"
if "!ip!"=="" (
echo 没有找到IP地址
) else (
echo !ip!
)
pause
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
LifeReset
电脑发烧友

2013-03-06 · 识迷途其未远,觉今是而昨非
LifeReset
采纳数:902 获赞数:1485

向TA提问 私信TA
展开全部
ipconfig /all|find /i "ip address">check.txt
for /f "tokens=2 delims=:" %%i in (check.txt) do echo %%i>check.txt
追问
这个提取出来的是第10.72.135.162那个IP, 因为你查找"ip address"就对应有两个IP, 我只要192.168.106.209这个IP啊。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式