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

3

经过一些运算后,我希望将所有负数出现的位置都替换为0。举个简单的例子:

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

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

也许需要编写一些函数?不确定。任何帮助都将不胜感激。

1个回答

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

那是一个相当糟糕的名称,可以自由选择更好的名称。然后:
$ a=5 b=3
$ no_negatives $((a - b))
2
$ no_negatives $((b - a))
0

谢谢。这正是我所需要的。但愿我有更多的声望来为你点赞。 - Mike D

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接