linux shell 数值比较错误

来源:互联网 发布:mac不能播放视频 编辑:程序博客网 时间:2024/06/06 03:16

这几天在写shell脚本,其中一个就是比较数值,测试的那几次都是正确的,但到了线上就出错了。脚本是这样的

if [[ $fileCount > 20 ]]then    echo "too much files, waiting for uploading."else    echo "ok."fi


看起来很简单的,实际这里有个坑:"$fileCount > 20"这个条件的值是不确定的,系统会随机进入then或else分支,并且不报错。


修改方法也很简单,将比较符换成“-gt”就可以了:

if [[ $fileCount -gt 20 ]]then    echo "too much files, waiting for uploading."else    echo "ok."fi

其他的比较符:

   -eq       等于,如:if [ "$a" -eq "$b" ]
    -ne       不等于,如:if [ "$a" -ne "$b" ]
    -gt       大于,如:if [ "$a" -gt "$b" ]
    -ge       大于等于,如:if [ "$a" -ge "$b" ]
    -lt       小于,如:if [ "$a" -lt "$b" ]
    -le       小于等于,如:if [ "$a" -le "$b" ]



这个的原因,还不知道...

0 0
原创粉丝点击