日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php開源 > php教程 > 【Bash百寶箱】shell內建命令之test

【Bash百寶箱】shell內建命令之test

來源:程序員人生   發布時間:2016-11-17 09:21:52 閱讀次數:2426次

在shell中,內建(builtin)命令test,格式以下:

test expr [ expr ]

test命令用于測試條件表達式expr的結果,為true時返回0,為false時返回1,每一個運算符和操作數都是1個獨立的參數。對條件表達式測試時使用1對方括號也是可以的,效果同等于test命令。

test命令支持以下4種運算符(運算符優先級從高到低):

! expr 如果expr為false,返回true。 ( expr ) 返回expr的值,可用以改變運算符的優先級。 expr1 -a expr2 如果expr1和expr2都為true時,返回true。 expr1 -o expr2 如果expr1或expr2為true時,返回true

test命令對條件表達式求值時,取決于其參數格式,規則以下。

沒有任何參數:結果為false。

1個參數:參數非空時結果為true。

2個參數:如果第1個參數為“!”,第2個參數非空時結果為true。如果第1個參數為1元(單目)條件運算符,則1元條件運算測試為true時結果為true。否則,若第1個參數是無效的1元條件運算符,結果為false。

3個參數:如果第2個參數為2元(雙目)條件運算符,則結果就是第1個參數和第3個參數作2元條件運算的結果。有3個參數時,“-a”和“-o”作為2元條件運算符。如果第1個參數為“!”,則結果與第2個參數和第3個參數作為表達式的測試結果相反。如果第1個參數為左圓括號“(”,第3個參數為右圓括號“)”,則結果就是第2個參數的測試結果。

4個參數:如果第1個參數為“!”,則測試結果與后面3個參數構成的表達式的測試結果相反,否則依照運算符的優先級和上面列出的規則處理。

5個及5個以上的參數:依照運算符的優先級和上面列出的規則處理。

條件表達式可以對文件、字符串、數字進行測試,下面分別列出這些用法。

test命令對文件進行處理:

-a file 文件存在時為true。 -b file 文件存在且為特殊的塊block文件時為true。 -c file 文件存在且為特殊的字符character文件時為true。 -d file 文件存在且為目錄(文件夾)時為true。 -e file 文件存在時為true。 -f file 文件存在且為普通文件時為true。 -g file True if file exists and is set-group-id. -h file 文件存在且為符號(軟鏈接)文件時為true。 -k file 文件存在且設置了sticky位時為true。 -p file 文件存在且為著名管道FIFO時為true。 -r file 文件存在且可讀時為true。 -s file 文件存在且長度大于零時為true。 -t fd 文件描寫符已打開且指向終端時為true。 -u file True if file exists and its set-user-id bit is set. -w file 文件存在且可寫時為true。 -x file 文件存在且可履行時為true。 -G file 文件存在且具有有效組id時為true。 -L file 文件存在且為符號(軟鏈接)文件時為true。 -N file 文件存在且最后1次讀文件時對文件進行了修改的為true。 -O file 文件存在且具有有功效戶id時為true。 -S file 文件存在且為socket時為true。 file1 -ef file2 file1和file2指向同1個裝備和inode時為ture。 file1 -nt file2 file1比file2新或file1存在而file2不存在時為true。 file1 -ot file2 file2比file1新或file2存在而file1不存在時為true

test命令對字符串進行處理:

-o optname 通過shell內建命令set的選項“-o”激活了optname時為true-v varname 設置了shell變量varname時為true-R varname 設置了shell變量varname且為援用變量時為true-z string 字符串string長度為0時為truestring 字符串string長度非0時為true-n string 字符串string長度非0時為true。 string1 == string2 字符串string1和string2相同時為true。 string1 = string2 字符串string1和string2相同時為true。用于test命令,符合POSIX兼容性。 string1 != string2 字符串string1和string2不同時為true。 string1 < string2 按字典序,字符串string1比string2靠前時為true。 string1 > string2 按字典序,字符串string1比string2靠后時為true

test命令對數字進行處理:

arg1 -eq arg2 arg1是不是等于arg2 arg1 -ne arg2 arg1是不是不等于arg2 arg1 -lt arg2 arg1是不是小于arg2 arg1 -le arg2 arg1是不是小于或等于arg2 arg1 -gt arg2 arg1是不是大于arg2 arg1 -ge arg2 arg1是不是大于或等于arg2
生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 99精品在线观看视频 | 国产一区二区三区不卡在线观看 | 国产九色 | 免费成人在线网站 | 18视频网站在线观看 | 日韩在线视频一区二区三区 | 欧洲国产一区 | 精品国产91久久久久久老师 | 青草网 | 亚洲激情第一页 | 中文国产一区 | 精品视频99| 黄色片子一级 | 欧美午夜电影在线观看 | 久久综合99 | 精品久久久久久久久久久 | 成人精品视频在线观看 | 国产日韩精品一区 | 国产精品美女久久 | 国产午夜亚洲精品理论片色戒 | 99精品视频在线观看免费播放 | 亚洲一区视频 | 久久毛片| 很黄很污的网站 | 色综合热| 麻豆av毛片| www.日韩av.com | 精品成人av | 亚洲欧洲视频在线观看 | 99视频在线免费观看 | 欧美日韩亚洲一区 | 欧美三级视频 | 久久69 | 亚洲午夜在线观看 | 午夜精品久久久久久久久久久久久 | 国产免费久久 | 久久久久国产精品 | 久久免费少妇高潮久久精品99 | 国产成人综合自拍 | 91精品国产综合久久久久 | 免费在线黄色网址 |