我正在调用以下脚本来显示计算机中的本地用户帐户:
$adsi = [ADSI]'WinNT://localhost';
$adsi.Children | where {$_.SchemaClassName -eq 'user'} |Select-Object @{n='UserName';e={$_.Name}};
使用powershell.invoke执行上述脚本时,结果为
@{UserName=account17}
使用pipeline.invoke执行相同的脚本时,结果为:
UserName
--------
account17
使用PowerShell和管道调用时,为什么同一脚本的输出存在差异?
答案 0 :(得分:0)
不确定但是powershell.invoke
输出看起来像是通过write-host
的对象输出而pipeline.invoke
看起来像write-output
输出,即使两者都应该返回一个psobject。
更多代码会有所帮助