shell中比较两个数的大小,一般可以使用大小于号:">"、"<"、">="、"<=",和-ge、-gt、-le、-lt
比如:大于输出1,否则输出0
这种对于-gt的比较方式来说只能比较整数的大小,如果遇到浮点数,或者说是小数,就会报错:
对于大于号这种方式,只能说"看起来没问题"
问题就在于:它的浮点数比较是按位比的:
3.0的第一位是3, 20.0的第一位是2,3>2所以被判定为3.0>20.0,判断出错
所以进行浮点数大小的比较,需要用到bc这个命令:
bc 命令是任意精度计算器语言,通常在linux下当计算器用,类似基本的计算器, 使用这个计算器可以做基本的数学运算这样就可以了:
echo “3.0 > 20.0”|bc 这条命令,如果条件成立,返回的结果就是1,否则就是0
使用bc命令也可以实现加减乘除,除法是整除: