以下脚本使用-e
选项运行,因此如果其中的任何命令失败,它将退出:
#!/bin/sh -e
command1 #script should fail if command1 fails
command2 #script should NOT fail if command2 fails
command3 #script should fail if command3 fails
如何在<{1}}上使脚本不失败?
答案 0 :(得分:10)
command1
command2 || true
command3
答案 1 :(得分:3)
您可以根据需要关闭设置:
#!/bin/sh
set -e
command1 #script should fail if command1 fails
set +e
command2 #script should NOT fail if command2 fails
set -e
command3 #script should fail if command3 fails
答案 2 :(得分:0)
如果你在shell中运行一个退出的命令,可以通过在子shell中运行它来阻止它:
(. script.sh)