这是我的剧本。
get-wmiobject -class win32_networkadapterconfiguration
-computername (get-content .\computers.txt) -Filter "IPEnabled=TRUE" |
select PSComputerName,DNSServerSearchOrder
我的Get-Content将拥有一个巨大的计算机列表,在我的网络中不再存在的计算机,以及那些计算机。因此,在生成此列表时,我将在红色错误文本中获得“RPC Server not available”。我根本不希望这个显示。我尝试过-ErrorAction SilentlyContinue
或Ignore
但行为没有变化。
我也试过这个:
try {
get-wmiobject -class win32_networkadapterconfiguration
-computername (get-content .\computers.txt) -Filter "IPEnabled=TRUE" |
select PSComputerName,DNSServerSearchOrder
}
catch {
}
这也没让我好运。任何帮助表示赞赏!
答案 0 :(得分:2)
您无法向我们展示您使用-ErrorAction silentlyContinue
的方式。如果放置得当,可以抑制你的错误。我猜你把它放在命令的末尾,因为它应该将它与Get-WMIObject
相关联。
get-wmiobject -class win32_networkadapterconfiguration -computername (get-content .\computers.txt) -Filter "IPEnabled=TRUE" -ErrorAction SilentlyContinue |
select PSComputerName,DNSServerSearchOrder
你的try catch块也可以工作,但我认为它会停止处理第一个错误,从而跳过其他好的计算机。
答案 1 :(得分:1)
我能够通过
解决这个问题get-wmiobject -class win32_networkadapterconfiguration
-computername (get-content .\computers.txt) 2>$null -Filter "IPEnabled=TRUE" |
select PSComputerName,DNSServerSearchOrder
我在Select之后也做了-ErrorAction,你需要在wmi管道中选择之前做这个。希望将来能帮助像我这样的人。