Bash基本運算子

keepcode發表於2020-04-28

1.算術運算子

#!/bin/bash
a=10
b=20
echo "a + b = `expr $a + $b`" 
echo "a - b = `expr $a - $b`"
echo "a * b =  `expr $a \* $b`"
echo "a / b = `expr $a / $b`"
echo "a % b = `expr $a % $b`"

原生bash不支援數學運算,可以藉助awk和expr

2.關係運算子

-eq 相等

-ne 不相等

-gt 大於

-lt 小於

-ge 大於等於

-le 小於等於

3.邏輯運算子

&& 邏輯與

|| 邏輯或

4.字串運算子

= 字串相等返回true

!= 字串不相等返回true

-z 字串長度為0返回true

-n 字串長度不為0返回true

str 字串不為空返回true

#!/bin/bash
if [  $1 ]
then 
    echo "$1: string is not empty"
else
    echo "$1:string is empty"
fi

5.字串測試運算子

-e 檔案存在

-f 檔案是一個一般檔案

-s 檔案大小不為0

-d 目錄

-b 塊裝置:軟盤,光碟機

-c 字元裝置:鍵盤,modem,音效卡

-p 管道

-h 符號連結

-L 符號連結

-S sockte

-r 可讀許可權

-w 可寫許可權

-x 可執行許可權

-O 檔案擁有者

-G 檔案使用者組

相關文章