[やりたいこと]
- bat から test.ps1 を実行する。
- test.ps1 からの戻り値を %ERRORLEVEL% で『10』を取得したい。
※%ERRORLEVEL% の値が、期待した値『10』とならなかったので、
下記のようにテストコマンドを作成した結果、
$LASTEXITCODE に『1』が入っていたことが判明
[わかったこと]
EXIT 0 の場合は、$LASTEXITCODE に、『0』が入る
EXIT 1 以上の場合は、$LASTEXITCODE に、『1』が入る
[質問したいこと]
・これは仕様なのでしょうか?
・回避方法がわかる方がいらっしゃいましたらご教示ください。
[環境]
●win10 home 64bit
●ps version
PS C:\WINDOWS\system32> $PSVersiontable
Name Value
PSVersion 5.1.18362.1110
PSEdition Desktop
PSCompatibleVersions {1.0, 2.0, 3.0, 4.0...}
BuildVersion 10.0.18362.1110
CLRVersion 4.0.30319.42000
WSManStackVersion 3.0
PSRemotingProtocolVersion 2.3
SerializationVersion 1.1.0.1
PowerShell
test.ps1の中身 exit 10
PowerShell
実行結果 PS > PowerShell -NoProfile -ExecutionPolicy Bypass -Command "& 'c:\work\test.ps1'" PS > $lastexitcode 1
まだ回答がついていません
会員登録して回答してみよう