错误如图:
/linux/install.sh:行15: if [[ $contrainsha e == *$contrainsname* ]] /linux/install.sh:行15: 条件表达式中有语法错误 ' 附近有语法错误/linux/install.sh:行15:
]]
[[]]语法
当[[ ]]判断expr成立时,退出状态为0,否则为非0值。这也和shell if语句对应上(true为0,false为非0)
[[ expr ]]
注意事项
1 [[ ]]和expr之间有两个空格,这两个空格是必须的,否则会导致语法错误
2 [[ ]]对数字的比较仍然不友好,建议使用if判断条件时,用(())来处理整型数字,用[[ ]]来处理字符串或者文件
问题原因:
[[ ]]和expr之间有两个空格,这两个空格是必须的,否则会导致语法错误,我的程序里面只有一个空格导致执行错误。
解决方式
[[]] 中表达式前后加成两个空格,问题解决。
参考:https://blog.csdn.net/zzd_zzd/article/details/105084541