NETDOM与PowerShell FOREACH:大众电脑从CSV重新命名 [英] NETDOM with powershell FOREACH: Mass computer re-naming from CSV
问题描述
命令如下所示:
/ p>
NETDOM.exe / RENAMECOMPUTER:Abot / newname:NewA / userD:DomainAdmin / passwordD:password / userO:LocalAdmin / passwordO:password / force / reboot:30
我制作了一个计算机名称的CSV文件。在第一列中,第二列中的旧计算机名是新计算机名。它看起来像这样
我想使用PowershellFOREACH循环来替换$ OldName和$ NewName值,并使用CSV中的Old Name和New Name值。
FOREACH(我不知道在这里放什么){
NETDOM.exe / RENAMECOMPUTER:$ OldName / newname:$ NewName / userD:DomainAdmin / passwordD:password / userO:LocalAdmin / passwordO:password / force / reboot:30
}
我只使用了FOREACH和一个临时变量FOREACH($ temp in $ something)。是否有可能使用多于1?
使用 Import-Csv
用于导入CSV。使用 Rename-Computer
而不是 netdom
来重命名计算机。使用 Get-Credential
提示输入凭证。$ $ p $ code $ domainAdmin = Get-Credential -Message'Domain Admin'
$ localAdmin = Get-Credential -Message'Local Admin'
Import-Csv'C:\path\to\your.csv'| ForEach-Object {
重命名 - 计算机-NewName $ _。'新名称' - 计算机$ _。'旧名称'--DomainCredential $ domainAdmin -LocalCredential $ localAdmin -Restart -Force
}
使用 Get-Help
获取更多信息。
NETDOM is a Microsoft command-line utility that allows you to rename and/or join a remote computer to a domain/workgroup.
The command looks like this
NETDOM.exe /RENAMECOMPUTER:Abot /newname:NewA /userD:DomainAdmin /passwordD:password /userO:LocalAdmin /passwordO:password /force /reboot:30
I made a CSV of computer names. in Column 1 is the "OLD-Computername" in Column 2 is the "NEW-Computername". It looks like this
I want to use a Powershell "FOREACH" loop to replace the $OldName and $NewName values with the "Old Name" and "New Name" values found in the CSV.
FOREACH (I don't know what to put here) {
NETDOM.exe /RENAMECOMPUTER:$OldName /newname:$NewName /userD:DomainAdmin /passwordD:password /userO:LocalAdmin /passwordO:password /force /reboot:30
}
I have only used FOREACH with a temp variable FOREACH ($temp in $something). Is it possible to use more than 1?
Use Import-Csv
for importing a CSV. Use Rename-Computer
instead of netdom
for renaming a computer. Use Get-Credential
to prompt for credentials.
$domainAdmin = Get-Credential -Message 'Domain Admin'
$localAdmin = Get-Credential -Message 'Local Admin'
Import-Csv 'C:\path\to\your.csv' | ForEach-Object {
Rename-Computer -NewName $_.'New Name' -Computer $_.'Old Name' -DomainCredential $domainAdmin -LocalCredential $localAdmin -Restart -Force
}
Use Get-Help
to get further information.
这篇关于NETDOM与PowerShell FOREACH:大众电脑从CSV重新命名的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!