|
楼主 |
发表于 2011-3-25 12:36:33
|
显示全部楼层
再来一个不用 find 的。针对 以太网适配器。多个以太网适配器 同样适用。
编写这个脚本,主要是因为最近 单位 dhcp 路由器总调整 ,导致每次都要对各台电脑进行 网卡重启 实在麻烦,于是编辑这个东西,让同志们自行运行。我想这就是 脚本语言设计 的最初目的吧
需要 ipconfig/devcon
以太网适配器 英文名称叫 "Ethernet adapter" 考虑 xp/win7,xp下的ipconfig 输出为英文而且有非法字符(隐藏的回车符)所以需要分开处理。
通过 for 循环分析 ipconfig /all 命令结果,每分析一行 m增加一
当发现 某行第一个单词为 "以太网适配器" 或前两个单词为"Ethernet adapter" ,
既可以确定该行第二单词为适配器对应的网络连接名称,
其下方第三行一定是该适配器对应的网卡名称,
随即将 n 赋值为 m+2 ,将 l 赋值为该行第二单词,这其中 xp 的 ipconfig 输出信息中包含不规则隐藏的回车符以及":"都要在赋值 l 和 n 的时候考虑到,用 set l=!l:~x,y! 的方式调整一下。
当 m = n 的时候 说明for 循环已经进行到 包含网络适配器网卡名称的 行,此时通过 for 命令从该行获取 网卡名称并存入 net_drv.txt 中。
如果存在 net_drv.txt 文件,说明系统存在 以太网适配器。
通过 两个 for 循环 分别调用 devcon 和 net_dev.txt 的内容,找出net_dev.txt 中记载的以太网适配器 对应的 硬件ID 并通过 devcon 关闭/开启之。
最后删除 net_drv.txt
这个过程没有用到 find ,主要是为了演示 for /set 等指令在 cmd 中的应用。
可能用 powershell 或者 vbs 会更简单一些。
devcon 32位 以及脚本
重启网络设备.rar
(16.03 KB, 下载次数: 358)
|
|