2010-12-15 68 views

回答

4

可能是因为'x'未设置,所以比较是在空字符串转换为整数和零之间。它对空字符串不满意。

要解决

x=0 
...loop as now... 
[ $x -eq 0 ] ... 

这具有降低的方式你的代码可以打破的数量,如果有人出口环境变量“X”的有益副作用。

2

在bash,使用方法:

((x == 0)) && echo "No valid files" 

在POSIX壳:

[ ${x:-0} -eq 0 ] && echo "No valid files" 

或初始化变量乔纳森表示。

相关问题