负值在 RHEL 中突然被视为正值。为什么?

负值在 RHEL 中突然被视为正值。为什么?

例如:

# [[ -24 > 0 ]] &&  echo "Hi"
Hi

从昨天开始,我就发现了这种奇怪的行为。可能是什么原因?

答案1

因为在字符串比较的基础上“-24”大于“0”——三个字符与一个字符。用于比较数字:

$ [[ -24 -gt 0 ]] && echo "Hi"
$ 

相关内容