以下是通过命令脚本实现一键修改的完整方案(需以管理员身份运行): [PowerShell] 纯文本查看 复制代码# 修改计算机名(重启生效) Rename-Computer -NewName "NewPCName" -Force # 修改管理员账户用户名和全名 $AdminAccount = Get-LocalUser -Name "Administrator" $AdminAccount | Rename-LocalUser -NewName "NewAdminName" $AdminAccount | Set-LocalUser -FullName "New Full Display Name" # 强制立即重启生效 shutdown /r /t 0 操作说明及注意事项: 脚本执行前准备 将"NewPCName"替换为新的计算机名 将"Administrator"改为现有管理员账户名 设置"NewAdminName"为新用户名(登录用) 配置"New Full Display Name"为显示全名 用户文件夹名称处理 该脚本不会修改C:\Users目录下的用户文件夹名称,若需同步修改: [PowerShell] 纯文本查看 复制代码Rename-Item -Path "C:\Users\OldFolder" -NewName "NewFolder" 必须配合注册表修改HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList相关键值 微软账户特殊处理 如果是Microsoft账户登录,需先在官网修改账户名称 网页端修改后需执行同步命令: powershell Copy Code rundll32.exe keymgr.dll, KRShowKeyMgr 系统兼容性说明 支持Windows 10/11专业版/企业版工作站 家庭版需启用隐藏Administrator账户后使用 推荐先创建系统还原点再执行脚本 补充说明: 对于域环境计算机,需使用Add-Computer命令加入新域 若遇到"拒绝访问"错误,需检查组策略的账户命名规则限制 用户名长度建议保持在20字符内,避免特殊字符
通过网盘分享的文件:一键修改计算机名,用户名,和全名.zip 链接: https://pan.baidu.com/s/1yMUKkG8L5S6hkV7u8NsgPw?pwd=52pz 提取码: 52pz [Asm] 纯文本查看 复制代码 @echo off :: 自动提权检测 NET FILE 1>NUL 2>NUL if '%errorlevel%' == '0' ( goto ADMIN ) else ( echo 正在请求管理员权限... mshta vbscript:CreateObject("Shell.Application").ShellExecute("%~nx0","%*","","runas",1)(window.close)&exit ) :ADMIN :: 用户输入设置 set /p NEW_COMPUTER_NAME=请输入新计算机名(需重启生效): set /p OLD_USERNAME=请输入当前管理员账户名(如Administrator): set /p NEW_USERNAME=请输入新管理员登录名: set /p FULL_NAME=请输入管理员显示全名: :: 修改计算机名 wmic computersystem where name="%COMPUTERNAME%" call rename name="%NEW_COMPUTER_NAME%" :: 修改管理员账户 wmic useraccount where name='%OLD_USERNAME%' rename '%NEW_USERNAME%' net user "%OLD_USERNAME%" "%NEW_USERNAME%" /fullname:"%FULL_NAME%" :: 修改用户文件夹名(需手动确认) if exist "C:\Users\%OLD_USERNAME%" ( echo 正在修改用户文件夹... ren "C:\Users\%OLD_USERNAME%" "%NEW_USERNAME%" reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList" /v "ProfileImagePath" /d "C:\Users\%NEW_USERNAME%" /f ) :: 重启提示 echo 修改完成,需要重启生效! choice /t 30 /d y /c yn /m "是否立即重启?(30秒后自动重启)" if errorlevel 2 exit shutdown /r /t 0 不确定是不是你要的东西,按照你的描述,我觉得没问题
ChaosSPY1946021 发表于 2025-5-29 14:05 通过网盘分享的文件:一键修改计算机名,用户名,和全名.zip 链接: https://pan.baidu.com/s/1yMUKkG8L5S6 ... 试了下,两台电脑运行就闪退了,要的是计算机名 用户名 和全名 都是 我输入的一个名就好。
hantianwei 发表于 2025-5-29 14:34 试了下,两台电脑运行就闪退了,要的是计算机名 用户名 和全名 都是 我输入的一个名就好。 是要启动出现黑白界面那个, 然后让我输入名字那种, 不是修改脚本里的名字再运行
hantianwei 发表于 2025-5-29 14:40 对,类似运行了cmd框,让我输入一个名字, 然后就都改了, 修改的这三个地方的名字 是统一一个名字 通过网盘分享的文件:一键修改计算机名,用户名,和全名(1).zip 链接: https://pan.baidu.com/s/1r7qj5isuKwuHxM2bRjJ2QA?pwd=52pz 提取码: 52pz [PowerShell] 纯文本查看 复制代码 @echo off :: 检查管理员权限 net session >nul 2>&1 if %errorLevel% neq 0 ( echo 请右键选择"以管理员身份运行" pause exit /b ) :: 输入新计算机名 set /p new_computer=请输入新计算机名(按Enter跳过): if defined new_computer ( wmic computersystem where name="%COMPUTERNAME%" call rename name="%new_computer%" echo 计算机名将重启后生效 ) :: 输入新用户名(需先创建新用户) set /p new_username=请输入新用户名(按Enter跳过): if defined new_username ( set /p new_fullname=请输入用户全名(按Enter跳过): if defined new_fullname ( net user "%USERNAME%" "%new_username%" /fullname:"%new_fullname%" ) else ( net user "%USERNAME%" "%new_fullname%" ) echo 用户名修改需注销后生效 ) pause
hantianwei 发表于 2025-5-29 14:40 对,类似运行了cmd框,让我输入一个名字, 然后就都改了, 修改的这三个地方的名字 是统一一个名字 服了,你这需求真是挤一点,说一点, 你这和最开始的表述,已经有些差距了 最开始的表述,需要一键修改计算机名,用户名,和全名(这个是在计算机管理-本地用户和组-用户。修改的是管理员的用户名和全名)。 现在的需求是,要一次性更改三个名,要在命令集中手动输入。这玩意好像不是bat能解决的,这玩意主要用于主要用于在Windows或DOS系统中批量、自动化执行任务‌