
trapステートメントを用いることで、エラーが発生したときに何かメッセージなどの処理を行うことができます。
例1
基本となるtrap処理1 2 3 4 5 6 | $a = 5 / 0 Write-Host "答えは" $a trap{ Write-Host "エラーが発生しました。" } |
実行結果
1 2 3 4 5 6 7 8 9 | エラーが発生しました。 0 で除算しようとしました。 発生場所 行:5 文字:1 + $a = 5 / 0 + ~~~~~~~~~~ + CategoryInfo : NotSpecified: (:) [], RuntimeException + FullyQualifiedErrorId : RuntimeException 答えは 0 |
例2
breakを使ったtrap処理1 2 3 4 5 6 7 | $a = 5 / 0 Write-Host "答えは" $a trap{ Write-Host "エラーが発生しました。" break } |
実行結果
1 2 3 4 5 6 7 8 | エラーが発生しました。 0 で除算しようとしました。 発生場所 行:3 文字:1 + $a = 5 / 0 + ~~~~~~~~~~ + CategoryInfo : NotSpecified: (:) [], ParentContainsErrorRecordException + FullyQualifiedErrorId : RuntimeException |
例3
continueを使ったtrap処理1 2 3 4 5 6 7 | $a = 5 / 0 Write-Host "答えは" $a trap{ Write-Host "エラーが発生しました。" continue } |
実行結果
1 2 | エラーが発生しました。 答えは 0 |
スポンサーリンク