![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-10 15:57 |
共 47,811 主题排行 / 349,897 发帖 / 今日 0 篇 / 48,255 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » 批处理如何获得本机的IP和MAC地址然后进行绑定? |
| 可打印版本 11,422 / 31 |
| 第16楼 NaturalJ0 | 发表于 2006-09-29 05:15 |
| 银牌会员 发帖 533 积分 1,181 | |
|
呵呵,被 namejm 感染,现在也开始有“不生成临时文件”的偏好了。 ^_^
|
|
| 第17楼 wang6610 | 发表于 2006-09-29 11:54 |
| 银牌会员 发帖 488 积分 1,246 | |
Originally posted by iaide007 at 2006-9-10 05:41 PM: 气愤删了我的TXT文件!!!!!!!!!! |
|
| 第18楼 namejm | 发表于 2006-09-29 13:02 |
| 荣誉版主 发帖 1,737 积分 5,226 来自 成都 | |
Originally posted by wang6610 at 2006-9-29 11:54: 哎呀,那个代码里有一句令人闻风丧胆的语句,还是屏蔽了吧:del *.txt。这个东西有点危险哦。对你的遭遇表示同情。 以后还是对del和rd之类的语句小心为妙,建议各位在写类似语句的时候,尽量用echo语句来演示,让别人觉得满意了再修改不迟,尽量在显眼的地方加入警示语,以免别人测试的时候遭受不必要的损失。 |
|
| 第19楼 sea2moon | 发表于 2006-09-30 02:11 |
| 初级用户 发帖 23 积分 47 | |
Originally posted by pengfei at 2006-9-19 02:40: pengfei兄的这段代码看的不是很懂,尤其是有两个DO的那个地方 能否给小弟解释下? |
|
| 第20楼 pengfei | 发表于 2006-09-30 02:16 |
| 银牌会员 发帖 485 积分 1,218 来自 湖南.娄底 | |
|
建议for /? 其实就是for语句的用法, 没什么.
ipconfig /all如果是宽带用户, 会显示两个ip两个mac地址, 以及两个网关. 用计数的方式实现了提取不同的IP和MAC以及网关. 如果不用这种计数方式提取指定几个数据, 就不好绑定网卡了. |
|
| 第21楼 sea2moon | 发表于 2006-09-30 02:20 |
| 初级用户 发帖 23 积分 47 | |
|
for /f "tokens=2* delims=:" %%a in ('ipconfig /all ^| find "IP Address"') do (
for /f "tokens=2* delims=:" %%i in ('ipconfig /all ^| find "Physical Address"') do ( set iptemp=%%a set mactemp=%%i if "!ipfilter!"=="0" set ip=!iptemp:~1! if "!macfilter!"=="0" set mac=!mactemp:~1! set /a ipfilter=!ipfilter!+1 set /a macfilter=!macfilter!+1 ) ) 主要是这个地方不懂,有两个DO,我就蒙了,一个的我能理解 DO后面我只知道用的是commond (/...) [ Last edited by sea2moon on 2006-9-30 at 02:23 ] |
|
| 第22楼 pengfei | 发表于 2006-09-30 02:24 |
| 银牌会员 发帖 485 积分 1,218 来自 湖南.娄底 | |
Originally posted by sea2moon at 2006-9-30 02:20: 这是一个FOR语句嵌套的问题! |
|
| 第23楼 sea2moon | 发表于 2006-09-30 02:36 |
| 初级用户 发帖 23 积分 47 | |
|
if "!ipfilter!"=="0" set ip=!iptemp:~1!
if "!macfilter!"=="0" set mac=!mactemp:~1! set /a ipfilter=!ipfilter!+1 set /a macfilter=!macfilter!+1 还有,这里也不太懂,不好意思啊。我初学没几天。。。 问题比较多,其中 if "!ipfilter!"=="0"变量ipfilter从设定一直为0,我改成 @echo off for /f "tokens=2* delims=:" %%a in ('ipconfig /all ^| find "IP Address"') do ( for /f "tokens=2* delims=:" %%i in ('ipconfig /all ^| find "Physical Address"') do ( set iptemp=%%a set mactemp=%%i set ip=!iptemp:~1! set mac=!mactemp:~1! ) ) arp -s %ip% %mac% 也是可以的。我试了下(我只是内网) 不过,set /a ipfilter=!ipfilter!+1变量是不是在数值上+1,是什么意思,我在想,ipfilter这个变量最后在ARP上用到了没有? 谢谢peng兄的细心回复 [ Last edited by sea2moon on 2006-9-30 at 02:46 ] |
|
| 第24楼 pengfei | 发表于 2006-09-30 09:36 |
| 银牌会员 发帖 485 积分 1,218 来自 湖南.娄底 | |
Originally posted by sea2moon at 2006-9-30 02:36: 大家互相帮助... 你的内网可能只有一个IP和MAC, 这段代码在我的电脑上显示的是电信路由器的IP和MAC地址. 另外发现这段代码没有开启延缓的环境变量, 可能你没复制的时候出错了. setlocal enabledelayedexpansion |
|
| 第25楼 ros244 | 发表于 2006-10-07 04:20 |
| 新手上路 发帖 2 积分 4 | |
|
学习了
|
|
| 第26楼 weilong888 | 发表于 2006-10-07 06:12 |
| 银牌会员 发帖 548 积分 1,270 | |
|
这样的讨论真的能让人长见识。
|
|
| 第27楼 koney | 发表于 2006-10-09 03:23 |
| 新手上路 发帖 1 积分 2 | |
|
如果我是双网卡的PC
两快网卡的IP的网关都需要绑定 用上面提到的方法 可以绑定第一块网卡的IP和网关 那应该怎么检测是否有第二块网卡 如果有的话两块网卡一起绑定 |
|
| 第28楼 pengfei | 发表于 2006-10-09 05:38 |
| 银牌会员 发帖 485 积分 1,218 来自 湖南.娄底 | |
|
楼上兄弟把 ipconfig /all 的显示贴出来看看.
|
|
| 第29楼 31676201 | 发表于 2006-12-04 12:34 |
| 新手上路 发帖 9 积分 19 | |
|
DOS,代表着自由开放与发展,我们努力起來,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!
|
|
| 第30楼 lxmxn | 发表于 2006-12-04 13:15 |
| 版主 发帖 4,938 积分 11,386 | |
|
楼上的兄弟也不用这么灌水吧? 汗一个先…… |
|
| 上一页 1 2 3 下一页 |
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |