shell if怎麼判斷參數有值

1) bash
   a=3 ; b=2 ; c=4
   if (( a > b )) && (( a < c ))
  
   或者

   if [[ $a > $b ]] && [[ $a < $c ]]

    或者
    
     if [ $a -gt $b -a $a -lt $c ]

2)   a=3 ; b=2 ; c=4

      if (( a > b )) || (( a < c ))
      
       或者
      if [[ $a > $b ]] || [[ $a < $c ]]

       或者
       if [ $a -gt $b -o $a -lt $c ]

3) -o = or , -a = and , 但我一貫只用 || 或者 && 
4) 可用, 可是要兩個獨立的 [ ] , [[ ]] 或 (( ))
   看 1)
5) -ne 比較數字 (numberic) ; != 比較字符 (string), 但後者拿來
   比較數字也可,只是否是標準用法
   -lt 是等同 < , 但 < 只能在 shell 的數值操做符 (( )) 或
   者 邏緝操做符 [[ ]] 纔可以使用, -lt , -eq , -gt , -ge
   -le , 這些是 test , 就是 [ ] 這個內建命令使用的條件操
   做符, 數字用, = , != 字符用, == 這個該是 [[ ]] 用的,
   可用來比對正規表示式, 但用在 [ ] 也可,只是不太正統用法
相關文章
相關標籤/搜索