关于Shell脚本if 报错:[: too many arguments
写了一个if 条件判断,就单纯的想判断变量空或者非空的时候做一些事情。
但是执行以后当为非空的时候一直报出这个错误-->line 6: [: too many arguments
起初我以为,我语句表达写错,但是研究了半天,并没有语法错误。
if [ ! $res ]; then
于是乎查询了一番,发现该结论:
环境变量如果没放在双引号中, bash会 认为方括号中的自变量过多。可以用双引号将字符串自变量括起来消除该问题。请记住,如果养成将所有字符串自变量用双引号括起的习惯,将除去很多类似的编程错误。
又get到一个坑点,??,重要的事情说三遍!!!
变量加双引号
变量加双引号
变量加双引号
if [ ! "$res" ]; then
相关推荐
懒人的小窝 2020-06-14
84593973 2020-06-05
xiaoxiaoniaoer 2020-04-26
luckymaoyy 2020-01-29
tvk 2020-01-28
酷云的csdn 2020-01-10
hanshangzhi 2020-01-07
thekenofDIS 2013-09-20
李高峰 2019-11-05
Mr欢先生 2014-07-08
linuxwcj 2019-07-11
pixel 2019-03-20
青松 2019-04-23
maoyongfan 2019-08-23
huha 2017-05-09
刘涛 2011-07-17
hanjinping 2011-06-04
JavaLab 2011-05-02
雪糕 2010-05-21