我该如何编写一个shell脚本,即使特定命令失败也能继续执行,但我希望稍后输出错误,我尝试了以下方法:
#!/bin/bash
./node_modules/.bin/wdio wdio.conf.js --spec ./test/specs/login.test.js
rc=$?
echo "print here"
chown -R gitlab-runner /gpc_testes/
chown -R gitlab-runner /gpc_fontes/
exit $rc
但是,当节点模块命令失败时,脚本会停止运行。
set +e
作为第一行。这将使bash在出现错误时不退出。 - user8122577bash -e yourscript
调用才能产生该效果(如果没有以这种方式或某种等效方式调用,set +e
将无效)。 - Charles Duffyerrexit
标志的代码或调用选项(关于这一点:抱怨未包括[mcve]),我想知道是否wdio
在退出时以错误状态离开终端,导致后来的echo
没有可见效果? - Charles Duffy