[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[系统相关] BAT脚本修改计算机名字怎样自动取TXT的文字?

bat修改计算机名字,cmd窗体输入的计算机名字自动取123这个TXT的文字,批处理应该怎么改,感谢

计算机名字到底是以CMD窗口输入为准?还是以123.txt的内容为准?
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

123.TXT内容

TOP

回复 3# hwb991030


    “cmd窗体输入的计算机名字”这一步的目的是什么?
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

就是打开BAT时候,正常修改计算机名是需要手动去输入计算机名字,意思想要打开BAT时候,不去人为输入计算机名,而是取123.TXT这个文本的内容,应该是取内容作为变量,就是改不好,所以问下

TOP

回复 5# hwb991030


    把你现在使用的代码发出来,我帮忙改改。
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

回复 6# Batcher
@echo off
::设置主机名
set /p pcname=请输入计算机名称:
::修改主机名
set regpth1=HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ComputerName\ComputerName
set regpth2=HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
set regpth3=HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\ComputerName\ActiveComputerName
reg add %regpth1% /v ComputerName /d %pcname% /f>nul
reg add %regpth2% /v "NV Hostname" /d %pcname% /f>nul
reg add %regpth2% /v Hostname /d %pcname% /f>nul
reg add %regpth3% /v ComputerName /d %pcname% /f>nul

附件不能上传,只好传一下网上这个代码,这个BAT执行时候手工去输入计算机名,不手工输入,而是取本地电脑D:\123.TXT这个文本内容作为计算机名再执行BAT

TOP

  1. @echo off
  2. ::设置主机名
  3. set /p pcname=<d:\123.txt
  4. ::修改主机名
  5. set regpth1=HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ComputerName\ComputerName
  6. set regpth2=HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
  7. set regpth3=HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\ComputerName\ActiveComputerName
  8. reg add %regpth1% /v ComputerName /d %pcname% /f>nul
  9. reg add %regpth2% /v "NV Hostname" /d %pcname% /f>nul
  10. reg add %regpth2% /v Hostname /d %pcname% /f>nul
  11. reg add %regpth3% /v ComputerName /d %pcname% /f>nul
复制代码
智慧是,利用最简单的代码替代复杂事情的处理过程。
付款请扫头像二维码码,谢谢

TOP

回复 8# lifei259
感谢指教

TOP

回复 9# hwb991030


基础教程里面有个例子 set /p 获取文件第一行内容
http://bbs.bathome.net/thread-3774-1-1.html#pid23888
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

这不是更好吗
  1. @echo off
  2. ::设置主机名
  3. set pcname=XXX(计算机名称)
  4. ::修改主机名
  5. set regpth1=HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ComputerName\ComputerName
  6. set regpth2=HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
  7. set regpth3=HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\ComputerName\ActiveComputerName
  8. reg add %regpth1% /v ComputerName /d %pcname% /f>nul
  9. reg add %regpth2% /v "NV Hostname" /d %pcname% /f>nul
  10. reg add %regpth2% /v Hostname /d %pcname% /f>nul
  11. reg add %regpth3% /v ComputerName /d %pcname% /f>nul
复制代码
回复  Batcher
@echo off
::设置主机名
set /p pcname=请输入计算机名称:
::修改主机名
set regpth1 ...
hwb991030 发表于 2018-12-30 14:42

TOP

回复 11# smss


    没有更好只有更合适 ^_^ 也许楼主要把代码给很多不懂BAT甚至不懂IT的用户去执行
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

@echo off
mode con cols=80 lines=30
cd /d %~dp0
echo *******************************输入域登录用户名*********************************
set /p ipname=
@echo off
cd /d %~dp0
rem 获取计算机型号
for /f "tokens=2 delims==" %%a in ('wmic csproduct get name /value') do (
    set "Mode=%%a"
)
rem 获取序列号
for /f "tokens=2 delims==" %%a in ('wmic bios get serialnumber /value') do (
    set "SN=%%a"
)

rem 提取计算机名
FOR /F "tokens=1,2,3,4,5,6,7,8 delims=, " %%a in ('type \\fileserver\YAPPIT\temp\act.bat^|find "%ipname%"') do (
echo.          **************************本机信息********************
echo                              员工姓名        【%%g】
echo                              计算机名        【%%c】
echo                              IP地址          【%%d】
echo                              网关            【%%e】
echo                              计算机描述      【%%g,%%f】
echo.          **************************本机信息********************
pause
set pcname=%%c
set ip=%%d
set gateway=%%e
set ms=%%g,%%f
rem 信息写入

echo 计算机名: %%c   IP: %%d  序列号: %SN% >c:\version\%%f_%%g_%%c_"%mode%".txt
echo 计算机名: %%c   IP: %%d  序列号: %SN% >\\fileserver\adcheck\2019\%%f_%%g_%%c_"%mode%".txt
)
pause
rem 更改计算机名和IP
reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\ComputerName\ComputerName" /v ComputerName /t reg_sz /d %pcname% /f >nul 2>nul
reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\ComputerName\ActiveComputerName" /v ComputerName /t reg_sz /d %pcname% /f >nul 2>nul
reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\Parameters" /v "NV Hostname" /t reg_sz /d %pcname% /f >nul 2>nul
reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\Parameters" /v Hostname /t reg_sz /d %pcname% /f >nul 2>nul
reg add "HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\lanmanserver\parameters" /v "srvcomment" /t reg_sz /d %ms% /f >nul 2>nul
for /f "tokens=4*" %%a in ('netsh interface show interface ^| findstr "已连接"') do set "Name=%%~a"
echo 当前正在上网的网络连接名是【%Name%】
netsh interface ip set address name="%Name%" source=static addr=%ip% mask=255.255.255.0 gateway=%gateway%
netsh interface ip del dns name="%Name%" all >nul 2>nul
netsh interface ip set dns "%Name%" static 172.20.1.111 >nul 2>nul
netsh interface ip add dns "%Name%" 172.20.1.112 >nul 2>nul
@echo off
rem 姓名拼音,计算机名,电脑IP,网关,部门,姓名
rem x,HQ0572,192.168.xx.xx,192.168.xx.254,dep,某某
rem x,HQ0573,192.168.xx.xx,192.168.xx.254,dep,某某
rem x,HQ0574,192.168.xx.xx,192.168.xx.254,dep,某某
rem x,HQ0575,192.168.xx.xx,192.168.xx.254,dep,某某
rem x,HQ0576,192.168.xx.xx,192.168.xx.254,dep,某某
rem x,HQ0577,192.168.xx.xx,192.168.xx.254,dep,某某


现在自己在用的,400多用户,维护起来很方便,输入用户的姓名拼音或者计算机名就能快速写入计算机名,IP,并做好备注

TOP

返回列表