无忧启动论坛

标题: windows下能否用批处理设置IP地址,win7下正常,但在XP下运行出错 [打印本页]

作者: qj_tzy    时间: 2012-5-31 22:38
标题: windows下能否用批处理设置IP地址,win7下正常,但在XP下运行出错
单位上有自动获取IP地址的因特网,及设置固定IP(含子网掩码、网关、DNS)的专用网,若用笔记本电脑上此两个网络,就要更改IP地址,比较麻烦。能否用批命令编辑一菜单,选1或2就能分别进入不同的网络。

请高手指点,谢谢!


经指点,在win7下运行正常,但在winxp出错,还望各位指点。谢谢!

baosheng00 、527104427 两位的指点下,此问题得到解决,非常感谢两位!


[ 本帖最后由 qj_tzy 于 2012-6-12 22:10 编辑 ]
作者: baosheng00    时间: 2012-6-1 00:39
自己参考一下。

  1. @echo off
  2. color F1
  3. title 蓝宇电脑,IP设置
  4. MODE con: COLS=80 lines=30
  5. ver | find /i "5." >nul && goto menuxp
  6. ver | find "5.1" > NUL && echo goto menuxp
  7. ver | find "5.2" > NUL && echo goto menuxp
  8. ver | find "6.0" > NUL && echo goto menu7
  9. ver | find "6.1" > NUL && echo goto menu7
  10. ver | find "6.2" > NUL && echo goto menu7
  11. ver | find "6.3" > NUL && echo goto menu7
  12. :menuxp
  13. @ if exist D:\蓝宇IP备份.txt goto menuxp1
  14. ipconfig /all >D:\蓝宇IP备份.txt
  15. :menu
  16. cls
  17. Echo                                  蓝宇电脑,IP设置
  18. Echo.                             
  19. Echo                            当前时间:%date% %time:~0,-3%   
  20. Echo.                       
  21. Echo.
  22. Echo                            【1】设置192.168.1.2 (电信)
  23. Echo.
  24. Echo                            【2】设置192.168.1.3 (联通)
  25. Echo.
  26. Echo                            【3】设置为自动获取
  27. Echo.
  28. Echo                            【0】退出
  29. Echo.
  30. Echo                                           提示自动备份IP到D:\蓝宇IP备份.txt
  31. Echo.
  32. Echo.
  33. Set /p clearslt=请输入您的选择(1/2/3/0):
  34. If "%clearslt%"=="1" Goto xpip1
  35. If "%clearslt%"=="2" Goto xpip2
  36. If "%clearslt%"=="3" Goto xpip3
  37. If "%clearslt%"=="0" Goto end
  38. :menuxp1
  39. cls
  40. Echo                                  蓝宇电脑,IP设置
  41. Echo.                             
  42. Echo                            当前时间:%date% %time:~0,-3%   
  43. Echo.                       
  44. Echo.
  45. Echo                            【1】设置192.168.1.2 (电信)
  46. Echo.
  47. Echo                            【2】设置192.168.1.3 (联通)
  48. Echo.
  49. Echo                            【3】设置为自动获取
  50. Echo.
  51. Echo                            【0】退出
  52. Echo.
  53. Echo                                         已经备份首次IP地址到D:\蓝宇IP备份.txt
  54. Echo.
  55. Echo.
  56. Set /p clearslt=请输入您的选择(1/2/3/0):
  57. If "%clearslt%"=="1" Goto xpip1
  58. If "%clearslt%"=="2" Goto xpip2
  59. If "%clearslt%"=="3" Goto xpip3
  60. If "%clearslt%"=="0" Goto end
  61. :xpip1
  62. echo      IP自动设置开始....
  63. echo.
  64. echo      正在设置IP及子网掩码
  65. netsh interface ip set address "本地连接" static 192.168.1.2 255.255.255.0 192.168.1.1
  66. echo      正在设置DNS服务器
  67. netsh int ip set dns name="本地连接" source=static addr=202.96.128.143
  68. netsh int ip add dns name="本地连接" addr=202.96.128.68 index=2
  69. @rem 以上这句为设置DNS为202.96.128.143,备用:202.96.128.68
  70. cls
  71. echo.
  72. echo.
  73. echo.
  74. echo.
  75. echo.
  76. echo.
  77. echo.
  78. echo.
  79. echo.
  80. echo.
  81. echo                                  设置电信IP,设置完成!
  82. echo.
  83. echo                                蓝宇电脑制作,QQ:403477704
  84. echo.  
  85. Echo               请按任意键退出 。。。
  86. PAUSE >NUL 2>NUL
  87. exit

  88. :xpip2
  89. echo      IP自动设置开始....
  90. echo.
  91. echo      正在设置IP及子网掩码
  92. netsh interface ip set address "本地连接" static 192.168.1.3 255.255.255.0 192.168.1.1
  93. echo      正在设置DNS服务器
  94. netsh int ip set dns name="本地连接" source=static addr=221.5.88.88
  95. netsh int ip add dns name="本地连接" addr=210.21.196.6 index=2
  96. @rem 以上这句为设置DNS为221.5.88.88   备用:210.21.196.6
  97. cls
  98. echo.
  99. echo.
  100. echo.
  101. echo.
  102. echo.
  103. echo.
  104. echo.
  105. echo.
  106. echo.
  107. echo.
  108. echo                                  设置联通IP,设置完成!
  109. echo.
  110. echo                                蓝宇电脑制作,QQ:403477704
  111. echo.  
  112. Echo               请按任意键退出 。。。
  113. PAUSE >NUL 2>NUL
  114. exit
  115. :xpip3
  116. echo             IP自动设置开始....
  117. echo.
  118. echo             自动获取IP地址....
  119. netsh interface ip set address "本地连接" source = dhcp
  120. echo             自动获取DNS服务器....
  121. netsh interface ip set dns name = "本地连接" source = dhcp
  122. cls
  123. echo.
  124. echo.
  125. echo.
  126. echo.
  127. echo.
  128. echo.
  129. echo.
  130. echo.
  131. echo.
  132. echo.
  133. echo                                  设置自动获取IP,设置完成!
  134. echo.
  135. echo                                蓝宇电脑制作,QQ:403477704
  136. echo.  
  137. Echo               请按任意键退出 。。。
  138. PAUSE >NUL 2>NUL
  139. exit


  140. :menu7
  141. :zd
  142. @ if exist D:\蓝宇IP备份.txt goto menu72
  143. ipconfig /all >D:\蓝宇IP备份.txt
  144. :menu
  145. cls
  146. Echo                                  蓝宇电脑,IP设置
  147. Echo.                             
  148. Echo                            当前时间:%date% %time:~0,-3%   
  149. Echo.                       
  150. Echo.
  151. Echo                            【1】设置192.168.1.2 (电信)
  152. Echo.
  153. Echo                            【2】设置192.168.1.3 (联通)
  154. Echo.
  155. Echo                            【3】设置为自动获取
  156. Echo.
  157. Echo                            【0】退出
  158. Echo.
  159. Echo                                           提示自动备份IP到D:\蓝宇IP备份.txt
  160. Echo.
  161. Echo.
  162. Set /p clearslt=请输入您的选择(1/2/3/0):
  163. If "%clearslt%"=="1" Goto ip1
  164. If "%clearslt%"=="2" Goto ip2
  165. If "%clearslt%"=="3" Goto ip3
  166. If "%clearslt%"=="0" Goto end

  167. :menu72
  168. cls
  169. Echo                                  蓝宇电脑,IP设置
  170. Echo.                             
  171. Echo                            当前时间:%date% %time:~0,-3%   
  172. Echo.                       
  173. Echo.
  174. Echo                            【1】设置192.168.1.2 (电信)
  175. Echo.
  176. Echo                            【2】设置192.168.1.3 (联通)
  177. Echo.
  178. Echo                            【3】设置为自动获取
  179. Echo.
  180. Echo                            【0】退出
  181. Echo.
  182. Echo                                         已经备份首次IP地址到D:\蓝宇IP备份.txt
  183. Echo.
  184. Echo.
  185. Set /p clearslt=请输入您的选择(1/2/3/0):
  186. If "%clearslt%"=="1" Goto ip1
  187. If "%clearslt%"=="2" Goto ip2
  188. If "%clearslt%"=="3" Goto ip3
  189. If "%clearslt%"=="0" Goto end
  190. :ip1
  191. echo      IP自动设置开始....
  192. echo.
  193. echo      正在设置IP及子网掩码
  194. netsh interface ip set address "本地连接" static 192.168.1.2 255.255.255.0 192.168.1.1
  195. echo      正在设置DNS服务器
  196. netsh int ip set dns name="本地连接" source=static addr=202.96.128.143
  197. netsh int ip add dns name="本地连接" addr=202.96.128.68 index=2
  198. @rem 以上这句为设置DNS为202.96.128.143,备用:202.96.128.68
  199. cls
  200. echo.
  201. echo.
  202. echo.
  203. echo.
  204. echo.
  205. echo.
  206. echo.
  207. echo.
  208. echo.
  209. echo.
  210. echo                                  设置电信IP,设置完成!
  211. echo.
  212. echo                                蓝宇电脑制作,QQ:403477704
  213. echo.  
  214. CHOICE /C YN /M "退出请按 Y,返回菜单请按 N。"
  215. if errorlevel 2 goto zd
  216. if errorlevel 1 goto end

  217. :ip2
  218. echo      IP自动设置开始....
  219. echo.
  220. echo      正在设置IP及子网掩码
  221. netsh interface ip set address "本地连接" static 192.168.1.3 255.255.255.0 192.168.1.1
  222. echo      正在设置DNS服务器
  223. netsh int ip set dns name="本地连接" source=static addr=221.5.88.88
  224. netsh int ip add dns name="本地连接" addr=210.21.196.6 index=2
  225. @rem 以上这句为设置DNS为221.5.88.88   备用:210.21.196.6
  226. cls
  227. echo.
  228. echo.
  229. echo.
  230. echo.
  231. echo.
  232. echo.
  233. echo.
  234. echo.
  235. echo.
  236. echo.
  237. echo                                  设置联通IP,设置完成!
  238. echo.
  239. echo                                蓝宇电脑制作,QQ:403477704
  240. echo.  
  241. CHOICE /C YN /M "退出请按 Y,返回菜单请按 N。"
  242. if errorlevel 2 goto zd
  243. if errorlevel 1 goto end  

  244. :ip3
  245. echo             IP自动设置开始....
  246. echo.
  247. echo             自动获取IP地址....
  248. netsh interface ip set address "本地连接" source = dhcp
  249. echo             自动获取DNS服务器....
  250. netsh interface ip set dns name = "本地连接" source = dhcp
  251. cls
  252. echo.
  253. echo.
  254. echo.
  255. echo.
  256. echo.
  257. echo.
  258. echo.
  259. echo.
  260. echo.
  261. echo.
  262. echo                                  设置自动获取IP,设置完成!
  263. echo.
  264. echo                                蓝宇电脑制作,QQ:403477704
  265. echo.  
  266. CHOICE /C YN /M "退出请按 Y,返回菜单请按 N。"
  267. if errorlevel 2 goto zd
  268. if errorlevel 1 goto end

  269. :end
  270. exit
复制代码

[ 本帖最后由 baosheng00 于 2012-6-12 13:24 编辑 ]
作者: 翅膀    时间: 2012-6-1 09:34
提示: 作者被禁止或删除 内容自动屏蔽
作者: yefei1019    时间: 2012-6-1 15:02
笔记本 可以 1个连接有线网络  1个连接无线网络   2个网络同时用 省的切换了,我以前也是切换来 切换去 麻烦
作者: qj_tzy    时间: 2012-6-1 19:48
标题: 回复 #2 baosheng00 的帖子
谢谢指点! 我试试,不清楚时再向您请教!
作者: 2012wumn    时间: 2012-6-4 17:09
以前在xp下也写过一个bat改IP的,转了win7发现出错了,就没再处理过了!看来得回去再看看以前的那文件了!
作者: qj_tzy    时间: 2012-6-9 20:22
标题: 回复 #2 baosheng00 的帖子
最近比较忙,一直未进行测试,今天抽空进行了测试,非常成功,感谢您的指点!
作者: qj_tzy    时间: 2012-6-10 10:36
标题: 回复 #2 baosheng00 的帖子
好象在xp下运行出错,还请再指点!
作者: baosheng00    时间: 2012-6-12 13:18
已经修改好批处理的代码,你自己看一下。
作者: 527104427    时间: 2012-6-12 13:38
原帖由 qj_tzy 于 2012-5-31 22:38 发表
单位上有自动获取IP地址的因特网,及设置固定IP(含子网掩码、网关、DNS)的专用网,若用笔记本电脑上此两个网络,就要更改IP地址,比较麻烦。能否用批命令编辑一菜单,选1或2就能分别进入不同的网络。

请高 ...

下面的代码可以一试,可能杀软会拦截,放行就是了:

@echo off
rem 设置变量
set Nic=本地连接
rem //由于各电脑网卡连接名称不同,可以根据你的实际情况更改。
set Addr=202.202.203.27
set Mask=255.255.255.0
set Gway=202.202.203.30
set Dns1=202.96.134.133
set Dns2=202.202.203.30
rem //以上依次为IP地址、子网掩码、网关、首选DNS、备用DNS
echo ------------------------------------------------------
echo 正在进行IP设置,请稍等
rem //可以根据你的需要更改
echo. IP地址 = %addr%
echo. 子网掩码 = %Mask%
netsh interface ip set address name=%Nic% source=static addr=%addr% mask=%Mask% >nul
echo. 网关 = %Gway%
netsh interface ip set address name=%Nic% gateway=%Gway% gwmetric=1 >nul
echo. 首选DNS = %Dns1%
netsh interface ip set dns name=%Nic% source=static addr=%Dns1% register=PRIMARY >nul
echo. 备用DNS = %Dns2%
echo 恭喜你,IP修改成功!
netsh interface ip add dns name=%Nic% addr=%Dns2% index=2 >nul
echo ------------------------------------------------------
pause>nul

作者: qj_tzy    时间: 2012-6-12 19:38
标题: 回复 #9 baosheng00 、#10 527104427 (╰進¤骝蟒耔) 的帖子
感谢两位的指点,我试试,若有不清楚时,再请教!
作者: qj_tzy    时间: 2012-6-12 21:24
标题: 回复 #2 baosheng00 的帖子
我仔细看了一下,好像winxp与win7执行的代码是一样的? 不知是否?
作者: qj_tzy    时间: 2012-6-12 21:28
标题: 回复 #10 527104427 的帖子
我试了一下,在winxp下运行,基本正常,但把备用dns显示到了主dns那一行中去了,而备用dns这一行是空的,不知为何,还希望指点!谢谢。
作者: 527104427    时间: 2012-6-12 21:40
原帖由 qj_tzy 于 2012-6-12 21:28 发表
我试了一下,在winxp下运行,基本正常,但把备用dns显示到了主dns那一行中去了,而备用dns这一行是空的,不知为何,还希望指点!谢谢。

我这正常啊:



作者: qj_tzy    时间: 2012-6-12 22:07
标题: 回复 #14 527104427 的帖子
不好意思,是我弄错了

netsh interface ip set address name=%Nic% source=static addr=%addr% mask=%Mask% >nul
录入为,多录了一个"="号:
netsh interface ip set address name=%Nic% source=static addr==%addr% mask=%Mask% >nul


改回后就正常了,再次谢谢!

在以上两位的指点下,这一问题得到解决。






欢迎光临 无忧启动论坛 (http://wuyou.net/) Powered by Discuz! X3.3