今天在写分支的时候,一段代码硬是不执行,最后一点点测试才发现居然是if 0居然为真,没有想到会是这个问题,浪费很会时间
#!/bin/bash
if [ “$#” ];
then
echo “yes”
else
echo “no”
fi
大概意思就是,这个小例子当中本来是为了判断脚本执行是否携带参数,然后不同的处理,结果不管if里面是神马数字,都会进入then里,蛋疼了半天,最后把if里条件写满居然对了,心里顿时涌现出无数的那啥
#!/bin/bash
if [ “$#” -le 0 ];
then
echo “yes”
else
echo “no”
fi
看来以后shell里if语句得慎重点,免得很多都进不去else的,没有测试出来导致出问题