目的
在编写shell脚本时经常遇到有时候运算符两边要加空格,有时候两边不能加空格,当弄混时经常出现语法错误问题,因此将遇到的问题梳理归纳起来。持续更新中…
两边不加空格:
- 赋值时“=”两边不可加空格:如val = 1、val= 1都是非法的。(Tip:两边有空格的为逻辑相等判断)。
两边要加空格:
- 表达式和运算符号之间要加空格:如val =
expr 1 + 1
,必须保证“+”两边要有空格。 - 条件表达式在方括号之间要加空格:如[$a == $b],必须保证“==”两边要有空格。
- if语句,此情况虽然不是两边要加空格,但是if右边需要加空格,如 if [ a = = a == a==b]。If语句,此情况虽然不是两边要加空格,但是if右边需要加空格,如 if [ a = = a == a==b]。