找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 22379|回复: 3

[网络连接] 【已解决】批处理如何根据MAC地址设置IP,计算机名称找不到自动退出?

[复制链接]
发表于 2013-8-2 16:44:36 | 显示全部楼层 |阅读模式
本帖最后由 zhong365 于 2013-8-9 15:42 编辑
  1. @echo off
  2. echo 正在配置IP地址、DNS请稍候……
  3. set MASK=255.255.255.0
  4. set GATEWAY=202.202.203.30
  5. set DNS1=202.96.134.133
  6. set DNS2=202.96.128.86
  7. ::set WINS=202.202.203.30
  8. for /f "tokens=12 delims= " %%i in ('ipconfig /all^|find /i "Physical Address"') do set mac=%%i
  9. for /f "tokens=1,2*" %%i in ('ipconfig /all^|find "Ethernet adapter"')  do set Ethernet=%%k
  10. for /f "tokens=1,2" %%i in ('more /e +21 %0 ^|find /i "%mac:~,-1%"') do set "name=%%i"&set "IP=%%j"
  11. for /f "tokens=4" %%j in ('more /e +21 %0 ^|find /i "%mac:~,-1%"') do set "p=%%j"
  12. reg add "HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\lanmanserver\parameters" /v srvcomment /t reg_sz /d %p% /f >nul 2>nul
  13. reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanmanserver\parameters" /v srvcomment /t reg_sz /d %p% /f >nul 2>nul
  14. reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\ComputerName\ComputerName" /v ComputerName /t reg_sz /d %name% /f >nul 2>nul
  15. reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\Parameters" /v "NV Hostname" /t reg_sz /d %name% /f >nul 2>nul
  16. reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\Parameters" /v Hostname /t reg_sz /d %name% /f >nul 2>nul
  17. netsh interface ip set address "%Ethernet:~,-2%" static %IP% %Mask% %GATEWAY% 1 >nul 2>nul
  18. netsh interface ip set dns "%Ethernet:~,-2%" static %DNS1% register=PRIMARY >nul 2>nul
  19. netsh interface ip add dns "%Ethernet:~,-2%"  %DNS2% index=2 >nul 2>nul
  20. ::netsh interface ip set wins "%Ethernet:~,-2%" static %WINS%  >nul 2>nul
  21. exit
  22. FWT1 202.202.203.13 00-19-85-E9-F0-11 服务台A13
  23. FWQ1 202.202.203.12 00-E5-4C-4F-1A-F0 服务器A12
  24. SYZ1 202.202.203.11 00-0B-2F-07-80-0A 收银组A11
  25. SHB1 202.202.203.10 00-17-32-B5-B5-9C 收货部A10
复制代码
上面的代码在XP的环境下可以根据MAC地址将事先设置好的 IP  计算机名称 写入电脑。
可是运行的计算机MAC 与 列表中不符的时候, 会一直卡在那里。
想加一个判断句,实现 找不到列表内MAC计算机时 提示并退出

评分

参与人数 1PB +2 收起 理由
Batcher + 2 感谢给帖子标题标注[已解决]字样

查看全部评分

 楼主| 发表于 2013-8-3 08:45:57 | 显示全部楼层
哎,,到现在都没人回答,自己先来一个
发表于 2013-8-3 17:22:49 | 显示全部楼层
11和12行之间插入一行:
if not defined name echo mac地址不在列表中&pause&goto :eof
10和11行 +21 改成 +22

评分

参与人数 1技术 +1 收起 理由
Batcher + 1 乐于助人

查看全部评分

 楼主| 发表于 2013-8-9 15:42:15 | 显示全部楼层
回复 3# apang


    谢谢。。刚才试了一下可以用
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-20 12:03 , Processed in 0.018207 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表