您好,登錄后才能下訂單哦!
shell運(yùn)算符主要有:比較運(yùn)算符(用于整數(shù)比較)、字符串運(yùn)算符(用于字符串測(cè)試)、文件操作運(yùn)算符(用于文件測(cè)試)、算術(shù)運(yùn)算符、邏輯運(yùn)算符、位運(yùn)算符、自增自減運(yùn)算符等。
測(cè)試結(jié)構(gòu):
方法一: test expression
方法二:[ expression ] (注意:中括號(hào)左右的空格)
一、整數(shù)比較
整數(shù)測(cè)試符:
-eq 等于
-gt 大于
-lt 小于
-ge 大于等于
-le 小于等于
-ne 不等于
二、字符串測(cè)試
字符串測(cè)試符:
-z "string" 為空返回真,否則為假
-n "string" 非空返回真,否則為假
"string1" = "string2" 相同返回真,否則為假
"string1" != "string2" 不相同返回真,否則為假
"string1" > "string2" 按字典排序,string1在string2之前,返回真,否則為假
"string1" < "string2" 按字典排序,string1在string2之后,返回真,否則為假
注意:[ "str1" \> "str2 ] (需要進(jìn)行轉(zhuǎn)義)
[[ "str1" \> "str2 ]] (不需要進(jìn)行轉(zhuǎn)義)
三、文件測(cè)試
文件測(cè)試符:
-b FILE 塊文件返回真
-c FILE 字符設(shè)備文件返回真
-d FILE 目錄文件返回真
-e FILE 存在返回真
-f FILE 普通文件返回真
-x FILE 可執(zhí)行文件返回真
-w FILE 可寫返回真
-r FILE 可讀返回真
-l FILE 鏈接文件返回真
-p FILE 管道文件返回真
-s FILE 文件大小不為0返回真
-S FILE socket文件返回真
-g FILE 文件設(shè)置了SGID時(shí)返回真
-u FILE 文件設(shè)置了SUID時(shí)返回真
-k FILE 文件設(shè)置了sticky屬性時(shí)返回真
-G FILE 文件屬于有效的用戶組時(shí)返回真
-O FILE 文件屬于有效的用戶時(shí)返回真
FILE1 -nt FILE2 FILE1比FILE2新時(shí)返回真
FILE1 -ot FILE2 FILE1比FILE2舊時(shí)返回真
四、算術(shù)運(yùn)算符(結(jié)合shell內(nèi)建命令let使用)
常規(guī)算術(shù)運(yùn)算符
+、-、*、/、%、**
復(fù)合算術(shù)運(yùn)算符
+=、-=、*=、/=、%=
其它算數(shù)運(yùn)算符
1)$[]和$(( ))
2)expr命令
高精度計(jì)算(bc命令)
eg. bc <<< "scale=2;111/222;"
echo "scale=2;111/222;" | bc
五、邏輯運(yùn)算
邏輯測(cè)試符:
!expression 邏輯非
expression1 -a expression2 邏輯與,同時(shí)為真,測(cè)試結(jié)果為真
expression1 -o expression2 邏輯或,只要有一個(gè)為真,測(cè)試結(jié)果為真
邏輯運(yùn)算符:
! 邏輯非
&& 邏輯與
|| 邏輯或
六、位運(yùn)算
<< 左移運(yùn)算
>> 右移運(yùn)算
& 按位與運(yùn)算
| 按位或運(yùn)算
^ 按位異或運(yùn)算
~ 按位非運(yùn)算
七、自增自減
++ 自增
-- 自減
注意:操作對(duì)象只能是變量,不能是常數(shù)或表達(dá)式
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。