Shell脚本在失败后继续

时间:2017-06-22 19:33:08

标签: bash shell

如果编写一个即使特定命令失败也会继续执行的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

但是,当node modules命令失败时脚本会停止。

2 个答案:

答案 0 :(得分:1)

您可以使用

command_that_would_fail || command_failed=1
# More code and even more
.
.
if [ ${command_failed:-0} -eq 1 ]
then
 echo "command_that_would_fail failed"
fi

答案 1 :(得分:-2)

假设脚本的名称是test.sh。

执行脚本时,使用以下命令执行它

./ test.sh 2>> error.log

错误导致错误的命令不会出现在终端上,但会存储在文件error.log中,以后可以引用。