在Shell腳本中要經(jīng)常做各種測(cè)試,測(cè)試語(yǔ)句的格式:
(1)test <測(cè)試表達(dá)式>
(2) [<測(cè)試表達(dá)式>]
(3) [[<測(cè)試表達(dá)式>]]
三種的區(qū)別,在第三種中可以進(jìn)行通配符的匹配,而且&&,||,<,>,操作符也可以正常的存在[[]]中,但是不能存在[]中。
文件測(cè)試操作符
【inode,儲(chǔ)存文件的元信息,比如文件創(chuàng)建者,文件修改時(shí)間,創(chuàng)建時(shí)間,文件大小等,就是inode,中文是索引節(jié)點(diǎn),查看inode的方法:stat 文件名】
字符串操作符和整數(shù)二元比較操作符
在涉及數(shù)值計(jì)算的時(shí)候,盡量用(()),在(())中引用變量的值,加$或者不加都可以,在(())中不必使用左右的空格
Shell變量的分類(lèi):
只讀環(huán)境變量,(個(gè)人理解,就是將變量通過(guò)Bash提交到Shell腳本中執(zhí)行)。
參數(shù)變量和進(jìn)程狀態(tài)變量
進(jìn)程狀態(tài)變量的使用方法,命令,腳本都會(huì)返回一個(gè)狀態(tài)碼,
常用的錯(cuò)誤碼,1通用錯(cuò)誤,126----腳本沒(méi)有執(zhí)行權(quán)限 127命令沒(méi)有找到。
echo $$ -----當(dāng)前進(jìn)程的PID
echo $? -----之前執(zhí)行的命令或者腳本的返回值
echo $! -----運(yùn)行在后臺(tái)的最后一個(gè)作業(yè)的PID
echo $_ -----之前執(zhí)行的命令或者腳本的最后一個(gè)參數(shù)