日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

单/双中括号与测试条件

發(fā)布時(shí)間:2023/12/18 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 单/双中括号与测试条件 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

測(cè)試命令


tesst
[]內(nèi)置命令
[[]]bash中的關(guān)鍵字

單中括號(hào)


格式[#express1#op#express2#]
注意:
  其中#代表括號(hào)不能省略
  不能匹配模式
  變量引用應(yīng)用雙引號(hào)括起,尤其當(dāng)變量引用有空格時(shí)
  與或非形式-a –o -not
  常量應(yīng)用單/雙引號(hào)括起
  整數(shù)比較時(shí),< == ...需用反斜號(hào)轉(zhuǎn)義,相當(dāng)于-lt -eq ...

[root@ZYB ~]# zyb="haha haha" [root@ZYB ~]# echo $zyb haha haha [root@ZYB ~]# [ $zyb == "haha haha" ] -bash: [: too many arguments [root@ZYB ~]# echo $? 2 [root@ZYB ~]# [ "$zyb" == "haha haha" ] [root@ZYB ~]# echo $? 0 [root@ZYB ~]# [ "$zyb" != "haha haha" ] [root@ZYB ~]# echo $? 1 [root@ZYB ~]# [ "$zyb" != "hahahaha" ] [root@ZYB ~]# echo $? 0 [root@ZYB ~]# [ "$zyb" == "hahahaha" ] ; echo $? 1 \#使用管道輸出測(cè)試結(jié)果有問(wèn)題` [root@ZYB ~]# [ "$zyb" == "hahahaha" ] | echo $? 0

雙中括號(hào)


格式[[#pattern1#op#pattern2#]]
注意:
  其中#代表括號(hào)不能省略
  可用于模式匹配,支持正則表達(dá)式
  變量引用最好用雙引號(hào)括起,匹配的模式中的單雙引號(hào)都代表符號(hào)自身
  與或非形式&& || !
  整數(shù)比較時(shí),< == ...需用反斜號(hào)轉(zhuǎn)義,相當(dāng)于-lt -eq ...

[root@ZYB ~]# zyb="\"haha haha\"" [root@ZYB ~]# echo $zyb "haha haha" [root@ZYB ~]# [[ $zyb == ?haha?haha? ]] ; echo $? 0 [root@ZYB ~]# [[ "$zyb" == ?haha?haha? ]] ; echo $? 0 [root@ZYB ~]# [[ "$zyb" == "haha?haha" ]] ; echo $? 1

算術(shù)表達(dá)


let var_name=算術(shù)表達(dá)式
let var_name+=valuelet不能省略
let var_name++let不能省略
var_name=$[算術(shù)表達(dá)式]算術(shù)表達(dá)式空格較隨意
var_name=$((算術(shù)表達(dá)式))算術(shù)表達(dá)式空格較隨意
var_name=${var_name:-value}var_name非空保留原值;var_name空賦值value

[root@ZYB ~]# num=1+2; echo $num 1+2 [root@ZYB ~]# let num=1+2 ; echo $num 3 [root@ZYB ~]# var_name=1; echo $var_name 1 [root@ZYB ~]# let var_name+=2; echo $var_name 3 [root@ZYB ~]# var_name+=2 ; echo $var_name 32

測(cè)試條件


布爾運(yùn)算:與&&或||非!
組合條件測(cè)試:與-a或-o非-not
二元整數(shù)測(cè)試:num1 op num2
  -eq等于  -ne不等于
  -le小于等于  -ge大于等于  -lt小于  -gt大于
雙目字符測(cè)試:str1 op str2
  ==等于  !=或<>不等于  >大于  <小于
  =~左側(cè)是字符串,右側(cè)是一個(gè)模式,判斷左側(cè)的字符串能否被右側(cè)的模式所匹配,通常只在[[]]中使用,模式中可以使用行首、行尾錨定符,但是模式不要加引號(hào)
單目字符測(cè)試:
  -n str不空為真,空為假
  -z str空為真,不空為假
單目文件測(cè)試op /path/to/somefile
  -e文件是否存在  -a同前  -f普通文件  -d目錄
  -b存在且塊設(shè)備  -c存在且字符設(shè)備  -h/-L存在且符號(hào)鏈接
  -p存在且管道  -S存在且套接字  -s存在且不為空
  -r存在且有讀權(quán)限  -w存在且有寫(xiě)權(quán)限  -x存在且執(zhí)行權(quán)限
雙目文件測(cè)試file1 op file2
  -ntfile1比f(wàn)ile2新
  -otfile1比f(wàn)ile2老
  -effile1與file2是否指向同一個(gè)文件,包括軟硬鏈接

轉(zhuǎn)載于:https://www.cnblogs.com/hesper/p/8901774.html

總結(jié)

以上是生活随笔為你收集整理的单/双中括号与测试条件的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。