如果 curl 失败,如何停止 shell 脚本

Ste*_*lax 5 linux bash shell curl

当我将错误的参数传递给脚本 curl 失败但脚本继续执行时,我有使用 curl 的脚本。我试过使用curl -f/--fail参数但问题没有解决。停止脚本的最佳方法是什么?

我已经找到了我的错误。我将curl命令用于另一个命令

echo `curl --fail ... || exit 1`
Run Code Online (Sandbox Code Playgroud)

去掉 echo 命令后,curl 就可以正常工作了。谢谢你的回答,它也很有用。

sss*_*fff 9

您可以使用$?以下命令检查退出代码:

exit_status = $?
if [ $exit_status != 0 ]
  then
    exit $exit_status
fi
Run Code Online (Sandbox Code Playgroud)

如果要分析退出状态,请查看页面中的Exit codes部分 man curl。有很多不同的代码,这取决于它失败的原因。

编辑:您也可以使用command1 || command2command2当且仅当command1失败时执行:

curl .... || exit 1
Run Code Online (Sandbox Code Playgroud)