无忧启动论坛

标题: 批处理设置计算机名脚本 [打印本页]

作者: BEIKING    时间: 2023-11-8 14:08
标题: 批处理设置计算机名脚本


支持静默参数
1)PCName.bat -time
按当前执行脚本时间设置计算机名:PC-202311081358

2)PCName.bat -rand
按随机字符串设置计算机名:PC-EDLH70GN80R7

3)PCName.bat WinPE
按自定义字符串设置计算机名

  1. @echo off
  2. if /i "%UserName%" == "SYSTEM" (Goto GotAdmin) else (reg query "HKLM\SYSTEM\ControlSet001\Control\MiniNT" 1>nul 2>nul&&Goto GotAdmin)
  3. :BatchGotAdmin
  4. Set _Args=%*
  5. if `%1` neq `` Set "_Args=%_Args:"=""%"
  6. if exist %WinDir%\System32\fltMC.exe fltMC 1>nul 2>nul||mshta VBScript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c """"%~f0"" %_Args%""",,"runas",1)(Window.Close) 2>nul&&Exit /b

  7. :GotAdmin
  8. Pushd "%CD%"&cd /d "%~dp0"
  9. Set PN=PC-
  10. for /f "tokens=2*" %%i in ('reg query "HKLM\SYSTEM\CurrentControlSet\Control\ComputerName\ComputerName" /v "ComputerName" 2^>nul') do Set "OName=%%j"
  11. >"%TEMP%/DateCalculate.vbs" echo dt=date()
  12. >>"%TEMP%/DateCalculate.vbs" echo tm=time()
  13. >>"%TEMP%/DateCalculate.vbs" echo s=right(year(dt),4) ^& right("0" ^& month(dt),2) ^& right("0" ^& day(dt),2) ^& right("0" ^& Hour(tm),2) ^& right("0" ^& minute(tm),2)
  14. >>"%TEMP%/DateCalculate.vbs" echo wscript.echo s
  15. cscript 1>nul 2>nul&&for /f %%a in ('cscript /nologo "%TEMP%/DateCalculate.vbs"') do Set "TName=%PN%%%a"
  16. setlocal enabledelayedexpansion
  17. Set var=0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ
  18. Set id=&for /l %%i in (1,1,12) do (Set /a n=!random!%%36&for %%j in (!n!) do Set id=!id!!var:~%%j,1!)
  19. endlocal&Set RName=%PN%%id%
  20. Set NName=%1
  21. if defined NName Goto ModName

  22. :ShowName
  23. Title 计算机名&Color 2f
  24. MODE 1>nul 2>nul&&MODE con: Cols=45 Lines=12
  25. echo ★设置计算机名★
  26. echo ----------------
  27. if defined OName Call :EchoX "xx::◎保留原名称(" "70::直接 回车" "xx.:) %OName%"
  28. if defined TName Call :EchoX "xx::◎按时间命名(" "70::输入-time" "xx.:) %TName%"
  29. if defined RName Call :EchoX "xx::◎随机串命名(" "70::输入-rand" "xx.:) %RName%"
  30. Call :EchoX "xx::◎更换新名称(" "70::输入新名称后回车" "xx.:)↓"
  31. echo --------------------------------------------
  32. Set /p NName=
  33. if not defined NName Exit /b

  34. :ModName
  35. if /i "%NName%" == "-time" Set "NName=%TName%"
  36. if /i "%NName%" == "-rand" Set "NName=%RName%"
  37. reg add "HKLM\SYSTEM\CurrentControlSet\Control\ComputerName\ActiveComputerName" /f /v "ComputerName" /t REG_SZ /d "%NName%" 1>nul 2>nul
  38. reg add "HKLM\SYSTEM\CurrentControlSet\Control\ComputerName\ComputerName" /f /v "ComputerName" /t REG_SZ /d "%NName%" 1>nul 2>nul
  39. reg add "HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" /f /v "Hostname" /t REG_SZ /d "%NName%" 1>nul 2>nul
  40. reg add "HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" /f /v "NV Hostname" /t REG_SZ /d "%NName%" 1>nul 2>nul
  41. reg add "HKLM\SYSTEM\CurrentControlSet\Services\EventLog\State" /f /v "LastComputerName" /t REG_SZ /d "%NName%" 1>nul 2>nul
  42. reg add "HKLM\SYSTEM\ControlSet001\Control\ComputerName\ActiveComputerName" /f /v "ComputerName" /t REG_SZ /d "%NName%" 1>nul 2>nul
  43. reg add "HKLM\SYSTEM\ControlSet001\Control\ComputerName\ComputerName" /f /v "ComputerName" /t REG_SZ /d "%NName%" 1>nul 2>nul
  44. reg add "HKLM\SYSTEM\ControlSet001\Services\Tcpip\Parameters" /f /v "Hostname" /t REG_SZ /d "%NName%" 1>nul 2>nul
  45. reg add "HKLM\SYSTEM\ControlSet001\Services\Tcpip\Parameters" /f /v "NV Hostname" /t REG_SZ /d "%NName%" 1>nul 2>nul
  46. reg add "HKLM\SYSTEM\ControlSet001\Services\EventLog\State" /f /v "LastComputerName" /t REG_SZ /d "%NName%" 1>nul 2>nul
  47. reg query "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Print\Printers\Fax\DsSpooler" 1>nul 2>nul&&(
  48.     reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Print\Printers\Fax\DsSpooler" /f /v "uNCName" /t REG_SZ /d "\\%NName%\Fax" 1>nul 2>nul
  49.     reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Print\Printers\Fax\DsSpooler" /f /v "serverName" /t REG_SZ /d "%NName%" 1>nul 2>nul
  50.     reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Print\Printers\Fax\DsSpooler" /f /v "shortServerName" /t REG_SZ /d "%NName%" 1>nul 2>nul
  51. )
  52. reg query "HKLM\SOFTWARE\WOW6432Node\Microsoft\Windows NT\CurrentVersion\Print\Printers\Fax\DsSpooler" 1>nul 2>nul&&(
  53.     reg add "HKLM\SOFTWARE\WOW6432Node\Microsoft\Windows NT\CurrentVersion\Print\Printers\Fax\DsSpooler" /f /v "uNCName" /t REG_SZ /d "\\%NName%\Fax" 1>nul 2>nul
  54.     reg add "HKLM\SOFTWARE\WOW6432Node\Microsoft\Windows NT\CurrentVersion\Print\Printers\Fax\DsSpooler" /f /v "serverName" /t REG_SZ /d "%NName%" 1>nul 2>nul
  55.     reg add "HKLM\SOFTWARE\WOW6432Node\Microsoft\Windows NT\CurrentVersion\Print\Printers\Fax\DsSpooler" /f /v "shortServerName" /t REG_SZ /d "%NName%" 1>nul 2>nul
  56. )
  57. reg query "HKLM\SYSTEM\CurrentControlSet\Control\Print\Printers\Fax\DsSpooler" 1>nul 2>nul&&(
  58.     reg add "HKLM\SYSTEM\CurrentControlSet\Control\Print\Printers\Fax\DsSpooler" /f /v "uNCName" /t REG_SZ /d "\\%NName%\Fax" 1>nul 2>nul
  59.     reg add "HKLM\SYSTEM\CurrentControlSet\Control\Print\Printers\Fax\DsSpooler" /f /v "serverName" /t REG_SZ /d "%NName%" 1>nul 2>nul
  60.     reg add "HKLM\SYSTEM\CurrentControlSet\Control\Print\Printers\Fax\DsSpooler" /f /v "shortServerName" /t REG_SZ /d "%NName%" 1>nul 2>nul
  61. )
  62. reg query "HKLM\SYSTEM\ControlSet001\Control\Print\Printers\Fax\DsSpooler" 1>nul 2>nul&&(
  63.     reg add "HKLM\SYSTEM\ControlSet001\Control\Print\Printers\Fax\DsSpooler" /f /v "uNCName" /t REG_SZ /d "\\%NName%\Fax" 1>nul 2>nul
  64.     reg add "HKLM\SYSTEM\ControlSet001\Control\Print\Printers\Fax\DsSpooler" /f /v "serverName" /t REG_SZ /d "%NName%" 1>nul 2>nul
  65.     reg add "HKLM\SYSTEM\ControlSet001\Control\Print\Printers\Fax\DsSpooler" /f /v "shortServerName" /t REG_SZ /d "%NName%" 1>nul 2>nul
  66. )
  67. Exit /b

  68. :EchoX :: 显示彩色文字 (不支持半角字符 \ / : * ? " < >|. % ! ~)。
  69. setlocal enabledelayedexpansion
  70. Set echox=EchoX.exe&&!echox! 1>nul 2>nul||(Set echox=&mkdir "%TEMP%\EchoX" 2>nul)
  71. for %%a in (%*) do (
  72.     Set "param=%%a"&Set "param=!param:"=!"
  73.     Set "color=!param:~0,2!"&(if not exist %WinDir%\System32\findstr.exe if not defined echox Set "color=xx")
  74.     Set n=0&(if "!param:~2,2!" == "::" Set n=1)&(if "!param:~2,2!" == ".:" Set n=2)
  75.     if !n! gtr 0 (
  76.         if /i "!color!" == "xx" (Set /p="_!param:~4!"<nul) else (Set param=%%~nxa&if defined echox (!echox! -c !color! -n "!param:~4!") else (Pushd "%TEMP%\EchoX" 2>nul&>"!param:~4!",Set /p= <nul&findstr /a:!color! .* "!param:~4!*"&del "!param:~4!"&Popd))
  77.         if !n! == 2 echo.
  78.     ) else if defined param Set /p="_!param!"<nul
  79. )
  80. endlocal
  81. Goto :eof
复制代码



作者: ylac    时间: 2023-11-8 14:16
有没有局域网上批量更名
作者: caocaofff    时间: 2023-11-8 14:36
创意挺好的
作者: schdtv    时间: 2023-11-8 15:02
感谢分享软件!
作者: 邪恶海盗    时间: 2023-11-8 15:05
我记得32位和64位不一样,XP和瘟7不一样...
作者: LRL123    时间: 2023-11-8 15:30
6666
作者: yc2428    时间: 2023-11-8 15:42
谢谢分享
作者: c5215016    时间: 2023-11-8 15:42
好东西
作者: duhe303    时间: 2023-11-8 15:56
学习一下。。。。。。。。。。
作者: lr    时间: 2023-11-8 16:02

感谢分享软件
作者: yyz2191958    时间: 2023-11-8 19:33
谢谢分享
作者: lotus136    时间: 2023-11-8 19:35
学习了
作者: zwmfyy    时间: 2023-11-8 19:54
谢谢分享

作者: alexxin331    时间: 2023-11-8 20:09
谢谢分享
作者: nathan6498    时间: 2023-11-8 23:51
谢谢分享
作者: 11525252    时间: 2023-11-9 00:47
谢谢分享
作者: 创新科技2015    时间: 2023-11-9 01:02
谢谢分享
作者: 创新科技2015    时间: 2023-11-9 01:11
很给力
作者: zqfeng01    时间: 2023-11-9 09:05
感谢分享
作者: burglar    时间: 2023-11-9 10:03
谢谢分享
作者: zhangzpyc    时间: 2023-11-9 10:44
谢谢分享!
作者: quester.    时间: 2023-11-9 10:53
非常好用,谢谢分享。
作者: xcj138    时间: 2023-11-11 23:24
试试看
作者: danceinwar    时间: 2023-11-12 14:11

谢谢分享
作者: zqfeng01    时间: 2023-11-14 12:13
谢谢分享
作者: zhenghui    时间: 2023-11-14 13:24
这个不错挺好使用的,很方便
作者: nowayer    时间: 2023-11-20 19:26
提示: 作者被禁止或删除 内容自动屏蔽
作者: fxl0571    时间: 2023-11-21 21:11
谢谢分享,支持
作者: qwe    时间: 2023-11-21 21:21

谢谢分享
作者: 无犹启动    时间: 2024-2-14 07:24
谢谢分享
作者: papachi    时间: 2024-2-14 16:36
谢谢分享
作者: tilltotell007    时间: 2024-2-15 21:31
学习了
作者: shinykers    时间: 2024-2-15 21:33
这个好,不过能指定为之前系统的名字么?
作者: hehuiying    时间: 2024-4-15 00:56
谢谢分享
作者: 无犹启动    时间: 2024-4-20 11:24
谢谢分享
作者: 两笙山世    时间: 2024-4-20 11:44
感谢制作与分享!
作者: lr    时间: 2024-5-11 14:52
感谢分享
作者: 八叶伞    时间: 2024-10-9 20:22
感谢分享
作者: ftaoo    时间: 2024-11-21 09:39
感谢分享
作者: scofield2015    时间: 2024-11-21 10:15
这么好的东西!感谢楼主分享!感谢论坛!
作者: jinzhengpcpc    时间: 2024-11-28 21:45
这可是个好东西
作者: shramm    时间: 2024-12-2 22:16
谢谢分享,正需要这个~~~
作者: http88    时间: 2024-12-2 22:29
正好需要!谢谢您的分享,下载备用。
作者: sdlyredboy    时间: 2024-12-3 19:13
这个牛比
作者: xiaocgogo    时间: 2024-12-3 20:00
厉害了
作者: wn168cn@163.com    时间: 2024-12-3 20:09
感谢分享
作者: yeszxc    时间: 2024-12-3 20:32

谢谢分享
































学习了,谢谢分享!




作者: Lucy_99    时间: 2024-12-3 21:55
谢谢分享
作者: denslin    时间: 2024-12-3 22:11
感谢分享软件!




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