我正在尝试编写一个事件来复制一个文件。它不需要100% -目标文件可能被使用或锁定,在这种情况下,我希望构建成功。
所以我有个*
PowerShell -NoProfile -ExecutionPolicy Bypass -Command "cp foo `$(TargetDir)"当$(TargetDir)\foo被另一个进程使用时,我得到一个错误,而我的构建失败。所以我试着
PowerShell -NoProfile -ExecutionPolicy Bypass -Command "cp foo `$(TargetDir) -ErrorAction SilentlyContinue"然而,错误被打印出来,却失败了。所以我试着
PowerShell -NoProfile -ExecutionPolicy Bypass -Command "try { cp foo `$(TargetDir) } catch {}"现在没有打印错误,但仍然失败,因为如果我执行上面的$LastExitCode仍然等于1。
我可以再次包装在correctly和powershell中,但是如何正确地抑制错误呢?
*实际的命令如下--这并不重要
PowerShell -NoProfile -ExecutionPolicy Bypass -Command `"try { ls '`$(SolutionDir)\packages\GhostScriptSharp.*\Tools\gsdll32.dll' | Sort -Descending | Select -First 1 | cp -Destination '`$(TargetDir)' } catch {}`""发布于 2014-06-02 19:53:47
可以使用exit关键字显式设置脚本的退出代码:
PowerShell -NoProfile -ExecutionPolicy Bypass -Command "cp foo `$(TargetDir) -ErrorAction SilentlyContinue; exit 0"https://stackoverflow.com/questions/24002063
复制相似问题