の代替Start-Process
は、より構文的に簡潔な call operator&
です。
& cmd.exe /c 'ping.exe doesnotexist && exit 0 || exit 1'
終了コードは組み込み変数に含まれる$LASTEXITCODE
ため、次のようになります。
Write-Host $LASTEXITCODE
これにはプログラム実行の終了コードが含まれているため、CMD.exe で実行する必要はありません。
& ping.exe doesnotexist ; Write-Host $LASTEXITCODE
コマンド ライン プログラムに適用されます。
& cmd.exe /c 'D:\SQL2008R2\SQL2008R2\setup.exe /CONFIGURATIONFILE=sqlconfig.ini && exit 0 || exit 1'
あるいは単に:
& D:\SQL2008R2\SQL2008R2\setup.exe /CONFIGURATIONFILE=sqlconfig.ini
どちらの場合も$LASTEXITCODE
、成功の場合は 0 であり、それ以外の場合 (外部プログラムが正しく作成されている場合) はゼロ以外です。