我有下面的脚本,我想用它来比较一个float
和另一个给定的float。
#!/bin/sh
echo 'Enter a real number'
read n
echo n=$n
if (( $(echo "$n > 0.0" |bc -l) ))
then
echo 'n is +ve'
elif (( $(echo "$n < 0.0" |bc -l) ))
then
echo 'n is -ve'
else
echo 'n is zero'
fi
这在我的OS上运行得很好,但是if
语句在Linux (Ubuntu)中显示错误(“未找到”)。
更通用的语法是什么?(我想人们仍然可以使用bc
来处理浮点数)。
发布于 2016-09-14 13:46:34
我发现使用awk很方便:
if echo $n | awk '$0 > 0.0' | grep -q . ; then
echo 'n is +ve'
elif echo $n | awk '$0 < 0.0' | grep -q . ; then
echo 'n is -ve'
else
echo 'n is zero'
fi
https://stackoverflow.com/questions/39315862
复制相似问题