获取 npm 进程退出代码作为 powershell 中的输出

get npm process exitcode as output in powershell

我是 Powershell 的新手,想通过 Powershell 脚本自动执行某些过程。 如果 npm 运行 build 失败,有什么方法可以获取它的状态。目前,如果我没有添加条件,那么它会按顺序 运行 执行下一个命令,要么成功要么失败。

我已经添加了 $ErrorActionPreference = "Stop" 但它仅适用于 cmdlet。

$exitcode = npm run build
#need exitcode as output to check
if ($exitcode -eq 0) {
   Remove-Item -Path $spaNodeModulePath -Force -Recurse
   mkdir $spaNodeModulePath
   xcopy $libDistPath $spaNodeModulePath /e
   Set-Location $spaPath
}

您可以使用包含 exit code of the last native program that was run$LASTEXITCODE 变量。所以先执行程序,稍后检查$LASTEXITCODE

npm run build 
if ($LASTEXITCODE -eq 0) {
    Write-Output "NPM build was successful"
}

请注意 $LASTEXITCODE 不是用户定义的,它是 created and maintained by the PowerShell runtime