shell几个基本问题,被搞糊涂了。

shell几个基本问题,被搞糊涂了。

1、>和-gt 以及 <和lt =和-eq 有什么区别呢?
2、|| 和 -o && 和 -a有什么区别
3、while ( ( x<=10 )) 可以用while ( x<=10 )或者 while ( x -lt 10 )替代么?      

  • > 和 < 用于字符串的比较,而 -gt、-eq 等只能用于整数的比较
  • || 和 && 用于 [[ ... ]] 中,而 -a 和 -o 用于 [ ... ] 中
  • 数值相关的操作只能用 (( ... ))
      
很好!很好!很好!很好!      
学习.........      
好,很好,非常好, Yeah

为了初学者更好理解我补充说明一下
[ "x" -o "y" ] 和 [ "x" -a "y" ] 是对的
[[ "x" ]] || [[ "y" ]] 和 [[ "x" ]] && [[ "y" ]] 是对的
[ "x" ] || [ "y" ] 和 [ "x" ] && [ "y" ] 也是对的