`

shell中if语句的使用中字符串对比中的坑

阅读更多

一、脚本入下:

       
if [[ $type=="app" ]]; then
                echo '----in app'
                #docker run -d -p $port:8088 --name $project $dockerimage
                docker run -d --name $project -v /root/common/dubbo/bin:/dubbo/bin:Z -v /root/project/$project:/etc/supervisor.d:Z $dockerimage
        else
                echo '----in dubbo'
                #使用host网络模式启动,注意不同dubbo的端口需不同,防止冲突
                docker run -d --net host --name $project -v /root/common/dubbo/bin:/dubbo/bin:Z -v /root/project/$project:/etc/supervisor.d:Z $dockerimage
        fi


二、问题: $type值明明给了app,但是逻辑还是走了else

三、排查发现是if中的==两边没有空格导致的,加空格后解决问题。修改后的脚本
if [[ $type == "app" ]]; then
                echo '----in app'
                #docker run -d -p $port:8088 --name $project $dockerimage
                docker run -d --name $project -v /root/common/dubbo/bin:/dubbo/bin:Z -v /root/project/$project:/etc/supervisor.d:Z $dockerimage
        else
                echo '----in dubbo'
                #使用host网络模式启动,注意不同dubbo的端口需不同,防止冲突
                docker run -d --net host --name $project -v /root/common/dubbo/bin:/dubbo/bin:Z -v /root/project/$project:/etc/supervisor.d:Z $dockerimage
        fi



参考资料: https://www.cnblogs.com/aaronLinux/p/7074725.html
分享到:
评论

相关推荐

    Linux之shell中if语句–test命令

    Shell中的 test 命令用于检查某个条件是否成立,它可以进行数值、字符串和文件三个方面的测试。 test命令可以判断三类条件: 数值比较 字符串比较 文件比较 1.1数值比较 可以用在数字和变量上 比较 描述 n1 ...

    linux shell中if的各种判断

    shell编程中使用到得if语句内判断参数  –b当file存在并且是块文件时返回真  -c当file存在并且是字符文件时返回真  -d当pathname存在并且是一个目录时返回真  -e当pathname指定的文件或目录存在时返回真  -...

    shell 编程指南pdf

    14.4.1 在脚本中使用位置参数 142 14.4.2 向系统命令传递参数 142 14.4.3 特定变量参数 143 14.4.4 最后的退出状态 144 14.5 小结 145 第15章 引号 146 15.1 引用必要性 146 15.2 双引号 146 15.3 单引号 147 15.4 ...

    LinuxShell编程

    字符串表达式(判断条件命令if)2.3.3. 字符串操作2.3.4. 数值表达式2.3.5. 复合条件表达式2.4. 流程控制2.4.1. 条件转移 :if 条件语句2.4.2. 选择语句case2.4.3. 循环语句2.5. Shell中的函数运用2.5.1. 函数声明...

    LINUX and SHELL 自学总结

    1. #IF语句用法 4 2. #CASE语句用法 4 语法结构 4 加select 用法 4 #select范围用法 5 3. #GOTO语句 5 4. #UNTIL循环语句 5 5. 循环控制语句 5 1.break命令 5 2.continue命令 5 三、替换命令用法 6 1. #TR 替换命令 ...

    LINUX与UNIX SHELL编程指南(很全)

    14.4.1 在脚本中使用位置参数 142 14.4.2 向系统命令传递参数 142 14.4.3 特定变量参数 143 14.4.4 最后的退出状态 144 14.5 小结 145 第15章 引号 146 15.1 引用必要性 146 15.2 双引号 146 15.3 单引号 147 15.4 ...

    shell脚本学习手册

    5、shell字符串 6 6、Shell数组 7 7、Shell注释 9 Shell传递参数 9 1、实例 9 Shell数组 11 Shell运算符 12 1、算术运算符 13 2、关系运算符 14 3、布尔运算符 15 4、逻辑运算符 15 5、字符串运算符 16 6、文件测试...

    shell脚本编程之if语句学习笔记

    我不是研究linux下的东西的,所以这里只对shell脚本的用法做一个介绍,把我自己在使用过程中出现的问题记录下来,同时也是写下一些shell脚本语法的规则,方便以后查看。先来学习一下条件语句if的用法,通过这一个...

    linux shell中 if else以及大于、小于、等于逻辑表达式介绍

    比如比较字符串、判断文件是否存在及是否可读等,通常用”[]”来表示条件测试。注意:这里的空格很重要。要确保方括号的空格。笔者就曾因为空格缺少或位置不对,而浪费好多宝贵的时间。if ….; then….elif ….; ...

    LINUX与UNIX SHELL编程指南 高清PDF

    14.4.1 在脚本中使用位置参数 142 14.4.2 向系统命令传递参数 142 14.4.3 特定变量参数 143 14.4.4 最后的退出状态 144 14.5 小结 145 第15章 引号 146 15.1 引用必要性 146 15.2 双引号 146 15.3 单引号 147 15.4 ...

    Linux与unix shell编程指南

    19.6 在shell中使用函数 204 19.7 创建函数文件 204 19.8 定位文件 205 19.9 检查载入函数 205 19.10 执行shell函数 205 19.10.1 删除shell函数 206 19.10.2 编辑shell函数 206 19.10.3 函数举例 207 19.10.4 将函数...

    Shell脚本学习笔记

    3.2.2字符串比较 64 3.2.3 文件比较 65 3.2.4 复合条件检查 65 3.3 if-then的高级特征与case命令 66 3.3.1 使用双圆括号 66 3.3.2 使用双方括号 67 3.3.3 case命令 67 3.4 for命令 67 3.4.1 读取列表 68 3.4.2 读取...

    绝版经典《Linux与UNIX Shell编程指南》

    19.6 在shell中使用函数 204 19.7 创建函数文件 204 19.8 定位文件 205 19.9 检查载入函数 205 19.10 执行shell函数 205 19.10.1 删除shell函数 206 19.10.2 编辑shell函数 206 19.10.3 函数举例 207 19.10.4 将函数...

    shell教程-30章,下了之后会让你大吃一惊,相当好

    14.4.1 在脚本中使用位置参数 142 14.4.2 向系统命令传递参数 142 14.4.3 特定变量参数 143 14.4.4 最后的退出状态 144 14.5 小结 145 第15章 引号 146 15.1 引用必要性 146 15.2 双引号 146 15.3 单引号 147 15.4 ...

    Linux与Unix Shell编程指南(PDF格式,共30章)

    14.4.1 在脚本中使用位置参数 142 14.4.2 向系统命令传递参数 142 14.4.3 特定变量参数 143 14.4.4 最后的退出状态 144 14.5 小结 145 第15章 引号 146 15.1 引用必要性 146 15.2 双引号 146 15.3 单引号 147 15.4 ...

    linux shell 编程教程

    14.4.1 在脚本中使用位置参数 142 14.4.2 向系统命令传递参数 142 14.4.3 特定变量参数 143 14.4.4 最后的退出状态 144 14.5 小结 145 第15章 引号 146 15.1 引用必要性 146 15.2 双引号 146 15.3 单引号 147 15.4 ...

    第二十二章:shell条件语句及判断1

    二、if条件语句 三、扩展 一、条件测试:文件测试、整数比较、字符串比较、逻辑测试 二、if条件语句:单分支、双分支、多分支单分支: 语法:if [ 条件表达式

    Linux shell编程指南

    14.4.1 在脚本中使用位置参数 142 14.4.2 向系统命令传递参数 142 14.4.3 特定变量参数 143 14.4.4 最后的退出状态 144 14.5 小结 145 第15章 引号 146 15.1 引用必要性 146 15.2 双引号 146 15.3 单引号 147 15.4 ...

    shell编程和unix命令

    14.4.1 在脚本中使用位置参数 142 14.4.2 向系统命令传递参数 142 14.4.3 特定变量参数 143 14.4.4 最后的退出状态 144 14.5 小结 145 第15章 引号 146 15.1 引用必要性 146 15.2 双引号 146 15.3 单引号 147 15.4 ...

Global site tag (gtag.js) - Google Analytics