PowerShell是批量修改域内计算机描述信息最可靠的方式,可通过WMI(需重启)或直接写入注册表srvcomment值(Windows 10/11/Server中即时生效)实现,支持远程执行、结果验证与脚本化部署。

PowerShell 是批量修改域内计算机描述信息最可靠的方式,它绕过图形界面限制,支持远程执行、结果验证和脚本化部署。关键在于通过 WMI 或注册表两种路径写入 srvcomment 值,且后者在 Windows 11/Server 中无需重启即可生效(SMB 服务会动态读取)。
确认目标计算机并准备权限
确保你具备域管理员或本地管理员权限,并能通过 PowerShell 远程连接目标机器(需启用 WinRM)。建议先测试单台:
- 在域控或管理机上运行:
Test-WSMan -ComputerName PC01,确认远程管理通道畅通 - 若失败,需在目标机执行:
Enable-PSRemoting -Force(首次需管理员权限) - 将目标计算机名存入文本文件(如
computers.txt),每行一个,例如:
PC01
SRV-DB02
WKST-DESIGN03
使用 WMI 方式(兼容所有 Windows 版本,需重启)
调用 Win32_ComputerSystem 类,修改 Description 属性。该方式与系统属性界面同步,但必须重启才对网络发现生效:
计算机网络安全服务公司网站模板是一款适合提供云安全、网络安全、服务器管理。数据安全服务公司宣传网站模板下载。提示:本模板调用到谷歌字体库,可能会出现页面打开比较缓慢。
- 执行命令:
$desc = "研发部SQL服务器"; Get-Content computers.txt | ForEach-Object { Invoke-WmiMethod -Class Win32_ComputerSystem -Name Rename -ArgumentList @($_, $desc) -ComputerName $_ -ErrorAction SilentlyContinue } - 注意:此方法实际调用的是重命名接口,仅更新描述字段;执行后需手动重启每台目标机
直接写入注册表 srvcomment(推荐,Windows 10/11/Server 通用,即时生效)
这是当前最稳妥的批量方式,直接写入 LanmanServer\Parameters 下的 srvcomment 字符串值,SMB 服务会在数秒内刷新显示:
- 执行命令:
$newDesc = "财务部报表分析终端"; Get-Content computers.txt | ForEach-Object { Invoke-Command -ComputerName $_ -ScriptBlock { Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" -Name "srvcomment" -Value $using:newDesc -Force } -ErrorAction SilentlyContinue } - 验证是否成功(可选):
Get-Content computers.txt | ForEach-Object { Invoke-Command -ComputerName $_ -ScriptBlock { (Get-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters").srvcomment } } - 无需重启,新描述会在“网络”视图、远程桌面连接列表、共享访问弹窗中快速体现
处理常见异常情况
批量操作时可能遇到权限拒绝、连接超时或策略拦截,可加入简单容错逻辑:
- 跳过不可达主机:
-ErrorAction Continue替代SilentlyContinue,便于定位失败项 - 若遇组策略禁用注册表写入(如“禁止修改 LanmanServer 参数”),需先调整 GPO 或改用 WMI 方式
- 描述内容含中文或特殊字符无问题,但长度不能超过 255 字符,避免截断

















