Как Вы редактируете сценарий Powershell для продолжения ошибки?

Я изменил этот сценарий (https://gallery.technet.microsoft.com/scriptcenter/Create-HTML-Uptime-and-68e6acc0) для удара нескольких серверов, но он не генерирует отчет, даже если только одна из систем снижается. Как я изменяю сценарий, чтобы продолжить ошибки и генерировать отчет в конце? Ошибка:

Get-WmiObject : The RPC server is unavailable. (Exception from HRESULT: 0x800706BA)
At C:\Users\user\Desktop\CheckDiskSpaceDomain\GetDiskDriveSpaceDomain.ps1:19 char:25
+      $os = Get-WmiObject <<<<  -class win32_OperatingSystem -cn $s
    + CategoryInfo          : InvalidOperation: (:) [Get-WmiObject], COMException
    + FullyQualifiedErrorId : GetWMICOMException,Microsoft.PowerShell.Commands.GetWmiObjectCommand

You cannot call a method on a null-valued expression.
At C:\Users\user\Desktop\CheckDiskSpaceDomain\GetDiskDriveSpaceDomain.ps1:21 char:51
+        uptime = (get-date) - $os.converttodatetime <<<< ($os.lastbootuptime)}
    + CategoryInfo          : InvalidOperation: (converttodatetime:String) [], RuntimeException
    + FullyQualifiedErrorId : InvokeMethodOnNull
0
задан 3 March 2015 в 21:27
2 ответа

Похоже, у вас проблема при запуске get-wmiObject, после этого вызова просто напишите

-ErrorAction "Resume"

Похоже, $ OS на самом деле имеет нулевое значение, поэтому вы можете сделать что-то вроде это будет знать, является ли $ s нулевым, и принять решение, что делать:

if ($OS -ne $null){ 
    $uptime = (get-date) - $os.converttodatetime 
    }
else {
    write-host " OS is null" 
     } 

Для получения дополнительной информации об обработке ошибок:

http://blogs.msdn.com/b/kebab/archive/2013/06 /09/an-introduction-to-error-handling-in-powershell.aspx

1
ответ дан 4 December 2019 в 17:02

Попробуйте использовать -erroraction silentlycontinue

0
ответ дан 4 December 2019 в 17:02

Теги

Похожие вопросы