Bash:将所有负数实例显示为零

时间:2015-04-02 21:10:29

标签: linux bash scripting

经过一些数学运算后,我想将所有出现的负数显示为零。简单的例子:

num1=6
num2=8
firstresult=$(( $num1 - $num2 ))
echo $result
#
num3=2
num4=9
secondresult=$(( $num3 - $num4 ))
echo $secondresult

等等......显然,两个结果变量都会产生负数。我希望这些数字显示为零。

也许有些功能要写?不确定。任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:4)

no_negatives () {
    echo "$(( $1 < 0 ? 0 : $1 ))"
}

这个名字非常糟糕,随意挑选一个更好的名字。然后:

$ a=5 b=3
$ echo $(no_negatives $(( a - b )) )
2
$ echo $(no_negatives $(( b - a )) )
0