powershell 使用多个命令或变量使用Try / Catch进行Powershell错误处理

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了powershell 使用多个命令或变量使用Try / Catch进行Powershell错误处理相关的知识,希望对你有一定的参考价值。

##  Powershell Error Handling with Try/Catch, using multiple commands or variables
​
#  Declaring module Paths as array
$OSDScriptsPaths =@(
    "C:\Windows\System32\WindowsPowerShell\v1.0\Modules\OSDScripts",
    "C:\Program Files\WindowsPowerShell\Modules\OSDScripts"
)

#  Parse OSDScriptsPaths array and for each item try to remove the module using -ErrorAction Stop parameter and Err variable to store execution errors
#  We use -ErrorAction Stop in order to treat all errors as Terminating Errors
ForEach ($Path in $OSDScriptsPaths) {
    Try {
        Remove-Item -Path $Path -Recurse -Force -ErrorAction Stop -ErrorVariable +Err
        Write-Host "Delete $Path - Successful!"
    }
    
    #  Catch Item Not Found Exception error
    Catch [System.Management.Automation.ItemNotFoundException]
    {
        Write-Host "$Path - Not Found!" -ForegroundColor Green
    }

    #  Catch all other errors
    Catch {
        Write-Host "Delete $Path - Failed!"
        Write-Host "Failed with Error: "$Err
    }
}

以上是关于powershell 使用多个命令或变量使用Try / Catch进行Powershell错误处理的主要内容,如果未能解决你的问题,请参考以下文章