Bash shell 十进制测试

Bash shell 十进制测试

我的 shell 是 bash,我有三个变量 x=5; y = 7; z=7.5

我试图使用下面的语句来测试变量 $y 和 $z 的相等性,如下所示

命令:test $z -eq $y; echo $?

但是,它显示以下错误,我无法解决它。

-bash:测试:7.2:期望整数表达式

2

笔记:当我对整数 $x 和 $y 应用相同的测试命令时,它们工作正常。

答案1

您可以使用==运算符bc

test "$(echo $x == $z |bc)" -eq 1

expr1 == expr2
如果 expr1 等于 expr2,结果为 1。

——摘自 BC(1)

相关内容