加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

Bash while循环有两个字符串条件

发布时间:2020-12-15 21:47:20 所属栏目:安全 来源:网络整理
导读:我的bash脚本遇到了一些问题.我的脚本和其他东西是启动服务器,需要一些时间才能开始.为了对抗长时间启动,我已经放入了一个查询服务器的while循环,看看它是否正在运行. while [ $running -eq 0 ]; doecho "===" $response "===";if [ "$response" == "" ] ||
我的bash脚本遇到了一些问题.我的脚本和其他东西是启动服务器,需要一些时间才能开始.为了对抗长时间启动,我已经放入了一个查询服务器的while循环,看看它是否正在运行.

while [ $running -eq 0 ]; do
echo "===" $response "===";
if [ "$response" == "" ] || [ "$response" == *"404 Not Found"* ]; then
    sleep 1;
    response=$(curl $ip:4502/libs/granite/core/content/login.html);
else
   running=1;
fi
done

当退出循环时,$response等于“404”字符串.如果是这样的话,那东西应该还在循环中,不应该吗?似乎我的循环过早退出.

解决方法

[..]与glob不匹配.使用 [[ .. ]]:

if [ "$response" == "" ] || [[ "$response" == *"404 Not Found"* ]]; then

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读