避免在卷曲失败时退出脚本



我习惯于等到服务启动并运行,但在第一次尝试连接并失败整个脚本退出后使用 curl。卷曲失败后如何避免出口?我试过在卷曲上使用 --fail 但什么都没有。

这是我的代码

 #!/bin/bash
 getX(){
      echo `curl --fail domain.com` --> should return an array
 }
 test(){
  result=`getX`
  while [ ${#result[@]} -eq 0 ]
     do
       echo "waiting"
       result=`getX`
  done
 }
 test

我的建议是不要使用输出,而是使用 curl 的返回代码,怎么样?

getX(){
      result=`curl --fail domain.com` --> should return an array
    rc=$?
 }
 test(){
  getX
  while [ $rc  -ne 0 ]
     do
       echo "waiting"
       getX
  done
 }
 test

这永远不会导致数组的元素为零。请改用while [ -z "${result[0]}" ]。此外,将 curl 的--fail替换为 -s

相关内容

  • 没有找到相关文章

最新更新