繁体   English   中英

Powershell没有在try / catch中捕获异常?

[英]Powershell not capturing exception in try/catch?

我有一段代码像:
...
32: try {
33: set-acl -aclObject $AC -path $o.fullname
34: } catch [System.UnauthorizedAccessException] {
...

在执行过程中,我得到以下信息:

set-acl : Attempted to perform an unauthorized operation.
    At C:\script.ps1:33 char:3
    +         set-acl -aclObject $AC -path $o.fullname
    +         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        + CategoryInfo          : PermissionDenied: (N:\some_path:String) [Set-Acl], UnauthorizedAccessException
        + FullyQualifiedErrorId : System.UnauthorizedAccessException,Microsoft.PowerShell.Commands.SetAclCommand

作为系统运行。 知道为什么不被捕获吗?

尝试将ErrorAction参数设置为Stop

set-acl -aclObject $AC -path $o.fullname -ErrorAction Stop

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM