在 Powershell 中获取 ADSI 命令的输出

Getting Output of ADSI Command in Powershell

我正在尝试删除多台计算机上的一些本地管理员用户。这是我使用的脚本并且有效:

Import-Csv c:/input.csv | ForEach-Object {
    ([ADSI]"WinNT://$($_.ComputerName)").Invoke("Delete", "user", $_.Username)
}

问题是我想将未删除用户的结果直接获取到文本文件中。 什么命令可以帮助我?我试过 Out-File,但它给了我一个空文件。

使用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