中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-11 14:46
47,811 主题排行 / 349,897 发帖 / 今日 0 篇 / 48,256 会员排行
DOS批处理 & 脚本技术(批处理室) » 取得本地2个IP以后,判断内网IP的值再执行操作的问题
可打印版本  839 / 7
第1楼 THENEWLIFE 发表于 2009-04-02 02:24
初级用户 发帖 64 积分 78
取得本地2个IP以后,判断内网IP的值再执行操作的问题

for /f "tokens=2 delims=:" %%a in ('ipconfig /all ^| find /i "ip address" ') do echo %%a
192.168.0.8
59.55.*.*
这样能完成提取出本机IP,但是有2个,不知道怎么把内网IP提出来,再判断其IP地址是不是在120-150之间的IP,如果是的话,就执行一个文件。不是就退出
还请大大帮忙完成这个批
第2楼 netbenton 发表于 2009-04-02 07:51
银牌会员 发帖 752 积分 1,916 来自 广西
for /f "tokens=2 delims=:" %%a in ('ipconfig /all ^| find /i "ip address" ') do set ipd=%%a&goto :skip
::通常第一个应该是内网的,跳过第二个
:skip
::取第四位
for %%a in (%ipd:.= %) do set ipd4=%%a
if 1%ipd4% geq 1120 if 1%ipd4% leq 1150 echo 执行一个文件
echo 退出
第3楼 THENEWLIFE 发表于 2009-04-02 08:23
初级用户 发帖 64 积分 78
for /f "tokens=2 delims=:" %%a in ('ipconfig /all ^| find /i "ip address" ') do set ipd=%%a&goto :skip
这句的意思是把192.168.0.8这个IP赋给 IPD这个变量吧
for %%a in (%ipd:.= %) do set IPD4=%%a
(%ipd:.= %)这句是把192.168.0.8中的点(.)用空替换吧,那就变成了(19216808)吧。我看SET中是这么说的%PATH:str1=str2%

If 1%ipd4% geq 1120 if 1%ipd4% leq 1150 echo
这句按我的理解因该是:如果IPD这个变量前加1这个变量的值大于1120,如果1%IPD%小于1150的话就执行个文件
我因该知道点你的意思,你因该是想取第4位的值然后和120和150做比较,但是,这样下来不对啊。不知道是不是我哪理解错误了,还请大大指点
第4楼 netbenton 发表于 2009-04-02 10:15
银牌会员 发帖 752 积分 1,916 来自 广西
%ipd:.= %,当中有空格的,是替换为:192 168 0 8,并不是连在一起的
第5楼 THENEWLIFE 发表于 2009-04-02 11:46
初级用户 发帖 64 积分 78
那这里的 ipd4=%%a就是因该是192.168.0.8吧
If 1%ipd4% geq 1120 if 1%ipd4% leq 1150 echo
这句按我的理解因该是:如果IPD这个变量前加1这个变量的值大于1120,如果1%IPD%小于1150的话就执行个文

那我对这句的理解错了吗,如果没错的话,就因该得不到我要的结果吧
第6楼 netbenton 发表于 2009-04-02 13:51
银牌会员 发帖 752 积分 1,916 来自 广西
ipd4=8,而不是:192.168.0.8
你不是指对第四位(8)与120~150比较吗?
如果是就对了,加个1在前面是组合成18,与1120比较的,为了防止为空时出现语法错误才加个1在前面的。
你运行测试一下就知道了,我已经测试过了。

[ Last edited by netbenton on 2009-4-2 at 12:04 ]
第7楼 THENEWLIFE 发表于 2009-04-03 01:04
初级用户 发帖 64 积分 78
for %%a in (192 168 0 8)
这样就是取 8 出来吗.看FOR的HELP里面好象没看到这样用
你的批测试了,是成功的,非常感谢你孜孜不倦的指导
为什么这句会把8给取出来呢

[ Last edited by THENEWLIFE on 2009-4-3 at 11:53 ]
第8楼 qindaijun098 发表于 2009-04-04 11:36
新手上路 发帖 1 积分 1
学习了。。。。。
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023