1.基本語法
(1)「((運
算式))
」或
「((表示式))」或「
((表示式)
)」或「
[表示式]」
(2)expr + , - , *, /, % 加,減,乘,除,取餘
注意:expr運算子間要有空格
2.案例實操:
(1)計算3+2的值
[root@bigdata shell]$ expr 2+3
5
(2)計算3-2的值
[root@bigdata shell]$ expr 3-2
1
(3)計算(2+3)x4的值
(a)expr一步完成計算
[root@bigdata shell]$ expr `expr 2
+3` \*
420
(b)採用$ [表示式]方式
[root@bigdata shell]# s=$[(2
+3)*
4][root@bigdata shell]# echo $s
20
1.基本語法
[ condition ]
(條件)(注意condition前後要有空格)
注意:條件非空即為true,[ atguigu ]返回true, 返回false。
2. 常用判斷條件
(1)兩個整數之間比較
= 字串比較
-lt 小於(less than) -le 小於等於(less equal)
-eq 等於(equal) -gt 大於(greater than)
-ge 大於等於(greater equal) -ne 不等於(not equal)
(2)按照檔案許可權進行判斷
-r 有讀的許可權(read) -w 有寫的許可權(write)
-x 有執行的許可權(execute)
(3)按照檔案型別進行判斷
-f 檔案存在並且是乙個常規的檔案(file)
-e 檔案存在(existence) -d 檔案存在並是乙個目錄(directory)
3.案例實操
(1)23是否大於等於22
[root@bigdata shell]$ [
23-ge 22
][root@bigdata shell]$ echo $?
0
(2)helloworld.sh是否具有寫許可權
[root@bigdata shell]$ [
-w helloworld.sh ]
[root@bigdata shell]$ echo $?
0
(3)/opt/shell/huan.txt目錄中的檔案是否存在
[root@bigdata shell]# [
-e /opt/shell/huan.txt ]
[root@bigdata shell]# echo $?
0
[root@bigdata ~
]$ [ condition ]
&& echo ok || echo notok
ok[root@bigdata shell]$ [ condition ]&&[
]|| echo notok
notok
shell 運算子 條件判斷
1 基本語法 1 表示式 或 表示式 2 expr 加,減,乘,除,取餘注意 expr運算子間要有空格 計算 2 3 x4的值 採用 表示式 方式 expr expr 2 3 4 s 2 3 4 echo s 1 基本語法 condition 注意condition前後要有空格 注意 條件非空即為t...
運算子,條件判斷
邏輯運算子 and 邏輯 與 or 邏輯 或 條件運算子 not 邏輯 not可以對符號右側的值進 運算對於布林值,運算會對其進 取反操 作,true變false,false變true 例 a true b false c not a d not b print c為 c print d為 d 結果...
條件運算子和逗號運算子
條件運算子 表示式1 表示式2 表示式3 運算規劃 如果表示式1為真,返回表示式2的結果,否則返回表示式3的結果 例如 a 1,b 2 a b a b 返回值為2 注意表示式是右結合的.例 a 1,b 2,c 3 a b a b?c b 相當於 a b a b?c b 返回值為3 逗號運算子 多個表...