shell变量赋值 不能有空格的原因

时间:2021-04-08 09:16:08

典型例子:

a=date

echo $a      成立

a =date

echo $a     不成立

其实原因很简单

shell在解释命令时的原则是第一个符号标记只能是程序或者命令,有空格的时候第一个符号标记就是“a”,当然就不成立了

而没有空格的时候,第一个标记是“a=date”,shell将解释为变量赋值指令,因此可以通过。

这个原则还可以用来解释很多情况