我有一个bash脚本,我用来顺序执行多个命令,如果序列中至少有一个命令返回非零退出代码,我需要返回非零退出代码。我知道有一个等待命令,但我不知道我明白如何使用它。
UPD脚本如下所示:
#!/bin/bash command1 command2 command3
所有命令都在前台运行。无论前一个命令返回哪个退出状态,所有命令都需要运行(因此它不能表现为“在第一个错误上退出”)。基本上我需要收集所有退出状态并相应地返回全局退出状态。
去做就对了:
EXIT_STATUS=0 command1 || EXIT_STATUS=$? command2 || EXIT_STATUS=$? command3 || EXIT_STATUS=$? exit $EXIT_STATUS
不知道如果几个命令失败,它应该返回哪些状态。