我正在尝试删除多台计算机上的一些本地管理员用户。这是我使用的脚本,它起作用:
Import-Csv c:/input.csv | ForEach-Object {
([ADSI]"WinNT://$($_.ComputerName)").Invoke("Delete", "user", $_.Username)
}
问题是我希望将未删除的用户的结果直接转换为文本文件。
什么命令对我有帮助?我试过了Out-File
,但它给了我一个空文件。
答案 0 :(得分:0)
使用Get-WmiObject
向本地用户查询远程主机:
$csv = Import-Csv 'C:\input.csv'
$lcl = 'LocalAccount=True'
$csv | ForEach-Object { [ADSI]... }
$csv | Sort-Object -Unique ComputerName | ForEach-Object {
Get-WmiObject -Computer $_.ComputerName -Class Win32_UserAccount -Filter $lcl
} | Select-Object PSComputerName, Name | Export-Csv 'C:\output.csv' -NoType