主頁 > 知識庫 > PowerShell捕獲錯誤的2種方法(異常捕獲命令、錯誤變量)

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

熱門標簽:電商外呼系統(tǒng)排名 地圖標注審核周期 AI智能電銷機器人壞處 合肥電銷外呼系統(tǒng)供應商 如何申請400的電話呀 電話機器人對家居行業(yè)幫助大嗎 黑暗之魂3地圖標注 蘭州電銷機器人加盟 沈陽ai電銷智能機器人

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

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

復制代碼 代碼如下:

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

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


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

復制代碼 代碼如下:

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

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

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

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

您可能感興趣的文章:
  • PowerShell中查詢錯誤編號信息的2個方法
  • Powershell小技巧之找出腳本中的錯誤
  • Powershell小技巧之用變量累積記錄錯誤
  • 淺談PowerShell 捕獲錯誤
  • Powershell錯誤處理之what-if

標簽:黔南 河北 常州 河池 隴南 通遼 淮南 黔南

巨人網(wǎng)絡通訊聲明:本文標題《PowerShell捕獲錯誤的2種方法(異常捕獲命令、錯誤變量)》,本文關鍵詞  PowerShell,捕獲,錯誤,的,2種,;如發(fā)現(xiàn)本文內(nèi)容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《PowerShell捕獲錯誤的2種方法(異常捕獲命令、錯誤變量)》相關的同類信息!
  • 本頁收集關于PowerShell捕獲錯誤的2種方法(異常捕獲命令、錯誤變量)的相關信息資訊供網(wǎng)民參考!
  • 推薦文章