shell 基本運算子

2021-10-06 05:27:08 字數 1419 閱讀 2856

sum1=`expr 3 + 5`

sum2=`expr 3 \* 5` #乘法用\來轉義

sum3=`expr 5 / 3`

echo

"$,$,$"

結果:8,15,1

a=2;b=4

sum1=$[$a+

$b]sum2=$[$a*

$b]#無需轉義

sum3=$[$a-

$b]echo

"$,$,$"

結果:6,8,

-2

運算子

說明-eq

equal

-nenot equal

-gtgreater than

-ltless than

-gegreater than or equal

-leless than or equal

運算子說明舉例!

非運算[ ! false ] 返回 true。

-o或運算

[ $a -le 1 -o $a -gt 1 ]必然為真

-a與運算

[ $a -le 1 -a $a -gt 1 ]必然為假

運算子說明

&&邏輯的 and

||邏輯的 or

# 判斷命令執行成功與否

command && echo

"success"||

echo

"failed"

運算子

說明舉例

=檢測兩個字串是否相等,相等返回 true。

[ $a = $b ] 返回 false。

!=檢測兩個字串是否相等,不相等返回 true。

[ $a != $b ] 返回 true。

-z檢測字串長度是否為0,為0返回 true。

[ -z 「$a」 ] 返回 false。

-n檢測字串長度是否不為 0,不為 0 返回 true。

[ -n 「$a」 ] 返回 true。

操作符說明

-d file

檢測檔案是否是目錄,如果是,則返回 true。

-f file

檢測檔案是否是普通檔案(既不是目錄,也不是裝置檔案),如果是,則返回 true。

-x file

檢測檔案是否可執行,如果是,則返回 true。

-s file

檢測檔案是否為空(檔案大小是否大於0),不為空返回 true。

-e file

檢測檔案(包括目錄)是否存在,如果是,則返回 true。

使用 [[ … ]] 條件判斷結構,而不是 [ … ],能夠防止指令碼中的許多邏輯錯誤。比如,&&、||、< 和 > 操作符能夠正常存在於 [[ ]] 條件判斷結構中,但是如果出現在 [ ] 結構中的話,會報錯。

Shell 基本運算子

好久沒用過shell了,最近複習下。扣了幾張老大部落格的圖嘿嘿.shell 和其他程式語言一樣,支援多種運算子,包括 原生bash不支援簡單的數 算,但是可以通過其他命令來實現,例如 awk 和 expr,expr 最常用。expr 是一款表示式計算工具,使用它能完成表示式的求值操作。示例 root...

Shell 基本運算子

shell 程式設計支援下面幾種運算子 算數運算子 以加法運算子做乙個簡單的示例 bin bash a 3 b 3 val expr a b echo total value val 輸出 total value 6 關係運算子只支援數字,不支援字串,除非字串的值是數字。關係運算子 通過乙個簡單的示...

Shell 基本運算子 檔案測試運算子

檔案測試運算子用於檢測 unix 檔案的各種屬性。屬性檢測描述如下 操作符 說明 舉例 b file 檢測檔案是否是塊裝置檔案,如果是,則返回 true。b file 返回 false。c file 檢測檔案是否是字元裝置檔案,如果是,則返回 true。c file 返回 false。d file ...