我们将PowerShell用于一些自动构建脚本。不幸的是,默认情况下,PowerShell会在出错后继续。
通常,我可以通过设置$ErrorActionPreference = Stop
来更改此行为。
我看不到PowerShell.exe
的相应命令行开关,我们(故意)用-noprofile
运行命令,所以我不能把它放在那里。
如何为构建脚本执行此操作?
答案 0 :(得分:2)
将它放在您正在运行的脚本的顶部?
$ErrorActionPreference = 'Stop'
或者,您也可以使用ErrorAction参数在cmdlet级别获得类似的控件。
答案 1 :(得分:2)
似乎没有办法设置:
powershell -erroractionpreference stop ...
以下方法可行:
powershell -command { $ErrorActionPreference = "stop"; .\test.ps1 } -noprofile
当然没有什么可以阻止脚本(重新)设置ErrorActionPreference。