Powershell:使用-asjob参数时的错误处理

时间:2014-06-06 08:20:49

标签: powershell powershell-v4.0 dsc

我无法弄清楚如何在使用-asjob时获得没有响应的计算机名,有人会建议吗?

try{
    gwmi "Win32_OperatingSystem" -ComputerName $ordis -asjob  
    $resu=get-job | ? {$_.psjobtypename -eq "wmijob" } |wait-job |receive-job
}
catch{"error"}
$resu | select PSCOMPUTERNAME, @{name="lastboottime";expression={$_.converttodatetime($_.lastbootuptime)}} |sort lastboottime |ft
remove-job * -force

某些主机因以下错误而失败,但我不知道哪些

  

Le serveur RPC n' est pas disponible。 (例外de HRESULT:   0x800706BA)
      + CategoryInfo:InvalidResult:(:) [],COMException
      + FullyQualifiedErrorId:JobStateFailed

1 个答案:

答案 0 :(得分:1)

$resu | select..语句之后添加另一行来捕获失败的作业,try / catch不会起作用,因为您将wmi查询生成到单独的运行空间中。

....
Get-Job -State Failed | Select-Object -ExpandProperty Location
remove-job * -force