亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

PowerShell捕獲錯(cuò)誤的2種方法(異常捕獲命令、錯(cuò)誤變量)

 更新時(shí)間:2014年04月23日 08:58:53   作者:  
這篇文章主要介紹了PowerShell捕獲錯(cuò)誤的2種方法(異常捕獲命令、錯(cuò)誤變量),需要的朋友可以參考下

在先前的技巧中你能觀察到使用了 “-ErrorAction Stop”結(jié)合“異常捕獲命令”能捕獲一個(gè)Powershell命令的錯(cuò)誤,可是使用了這種方式操作之后,腳本會在第一個(gè)錯(cuò)誤發(fā)生后停止。

下面舉例:使用Powershell遞歸掃描文件夾。它將不能完成捕獲中間所有的異常(例如某些子文件夾是受訪問保護(hù)的)。

復(fù)制代碼 代碼如下:

try
{
  Get-ChildItem -Path $env:windir -Filter *.ps1 -Recurse -ErrorAction Stop
}
catch
{
  Write-Warning "Error: $_"
}

代碼捕獲了第一個(gè)錯(cuò)誤,這時(shí)命令將停止且不會繼續(xù)掃描剩下的子文件夾。


如果你只是抑制錯(cuò)誤,你將完成執(zhí)行,但是“異常捕獲命令”將無法捕獲到任何錯(cuò)誤信息。

復(fù)制代碼 代碼如下:

try
{
  Get-ChildItem -Path $env:windir -Filter *.ps1 -Recurse -ErrorAction SilentlyContinue
}
catch
{
  Write-Warning "Error: $_"
}

所以如果你想連續(xù)執(zhí)行且獲得沒權(quán)限訪問的目錄,完全不需要使用“異常捕獲命令”,你可以指定變量來獲得所有錯(cuò)誤報(bào)告:
復(fù)制代碼 代碼如下:

Get-ChildItem -Path $env:windir -Filter *.ps1 -Recurse -ErrorAction SilentlyContinue -ErrorVariable myErrors

Foreach ($incidence in $myErrors)
{
    Write-Warning ("Unable to access " + $incidence.CategoryInfo.TargetName)
}

相關(guān)文章

最新評論