我是一家小型企业(120 名员工)的系统管理员,我正在寻找一种简单的方法将办公室里的所有计算机重命名为更统一的命名约定。
我尝试在命令提示符中使用“netdom renamecomputer”行,但似乎根本不起作用。可能是因为没有组策略。我们使用工作组设置计算机,然后让我们的员工使用远程桌面连接连接到工作服务器。
是否有可以下载的 Powershell 工具或程序来帮助我重命名网络中的所有计算机?
PS 我们大部分机器都是 Win7 机器,但最近我们增加了大约 20 台 Win8 机器(以防万一)
答案1
我自己没用过这个,但是谷歌一下就能找到很多这个命令
WMIC ComputerSystem where Name=COMPUTERNAME call Rename Name=NewName
如果计算机名称中有破折号或其他特殊字符,则需要引用计算机名称
WMIC ComputerSystem where Name="COMPUTER-NAME" call Rename Name=NewName
答案2
Powershell 3.0(Windows 8)引入了Rename-Computer
cmdlet。示例:
Rename-Computer -NewName NewComputerName -Restart
这将重命名计算机并立即重新启动。
答案3
在 powershell 中,您可以使用类似于 Bali 的函数,但我会改用 powershell 的 get-wmiobject 函数,但这个函数的作用是一样的。不同之处在于,如果需要,可以远程调用 powershell cmdlet(尽管您必须为 psremoting 配置环境,但我认为这样做非常值得),而且您不必担心像使用 PSExec 那样传递凭据(尝试使用 psexec 远程映射不同凭据下的驱动器!),无论如何,命令将是
PS C:\Users\admin> $(gwmi win32_computersystem).Rename("Bldg-SerialNum")
这甚至可以通过从 wmi 获取机器的序列号来实现自动化,因此您可以将 .ps1 脚本部署到每台机器,或者从您自己的机器运行单个脚本,从列表中获取每台机器的名称,连接到它,获取序列号,并相应地更改名称。
答案4
PS C:\Users\admin> (gwmi win32_computersystem).Rename(“addspdc01”)
对我有用!非常感谢@MDMoore313
此外,不确定为什么,但这也有效:
PS 重命名-计算机 addspdc01 -localcredential:admin -domaincredential:admin