shell腳本,測(cè)試-創(chuàng)新互聯(lián)

首先我們要了解腳本的內(nèi)容和格式

創(chuàng)新互聯(lián)公司從2013年成立,先為美蘭等服務(wù)建站,美蘭等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為美蘭企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。
  1. 首行必須是shebang(解釋器路徑),shebang必須占據(jù)絕對(duì)行首

  2. 在shell腳本中,除了shebang之外,以#占據(jù)據(jù)對(duì)行首的內(nèi)容,均為注釋行,解釋器會(huì)自動(dòng)忽略這樣的行內(nèi)容

  3. 為了能在程序中突出程序的功能,適當(dāng)?shù)奶砑涌瞻仔?,以分隔不同的源代碼塊

  4. 有一定的縮進(jìn)

利用bash腳本編程實(shí)現(xiàn)算術(shù)運(yùn)算:

 +、-

 *、/

 %:模運(yùn)算,取余數(shù)

 **|^

增強(qiáng)型的算數(shù)運(yùn)算符號(hào)

 +=: let B=B+2-->let B+=2

 -=  let B=B+2-->let B-=2

 *=  let B=B+2-->let B*=2

 /=  let B=B+2-->let B/=2

 %=  let B=B+2-->let B%=2

特殊的增強(qiáng)型運(yùn)算:

 let B=B+1 -->let B+=1 -->let B++

 let B=B-1 -->let B-=1 -->let B--

 B++: 先將B的值賦給其他變量,然后再自身+1

 ++B:先做自身+1計(jì)算,然后再將B的值賦給其他變量

shell提供的算數(shù)運(yùn)算方法

 1.let:let VAR=算數(shù)表達(dá)式

 將算數(shù)表達(dá)式先行進(jìn)行算數(shù)運(yùn)算,并將運(yùn)算的道德結(jié)果保存到變量VAR中

 2.VAR=$[算數(shù)表達(dá)式]

 算數(shù)表達(dá)式中,如果有變量引用,可以使用$引用,也可以省略$

 3.VAR=$((算數(shù)表達(dá)式))

 算數(shù)表達(dá)式中,如果有變量引用,可以使用$引用,也可以省略$

 4.expr ARGU1 ARGU2 ARGU3

 ARGU1和ARGU3必須是數(shù)值,ARGU2必須是運(yùn)算符號(hào)

 5.echo "算數(shù)表達(dá)式" | bc

 注意:*在某些情況下需要轉(zhuǎn)義

條件測(cè)試命令

 test EXPRESSION

 shell的內(nèi)建命令

 [ EXPRESSION ]

 外部命令[

 `EXPRESSION`

 bash的內(nèi)部關(guān)鍵字

注意:這類命令一般沒有執(zhí)行結(jié)果只有執(zhí)行狀態(tài)返回值;

這里說一下test測(cè)試命令的測(cè)試表達(dá)式

test測(cè)試命令有三類測(cè)試表達(dá)式:

1.數(shù)值測(cè)試:雙目操作符

 -eq: 被測(cè)試的兩個(gè)數(shù)值是否相等,相等為真,不等為假

 -ne:被測(cè)試的兩個(gè)數(shù)值是否不相等,不等為真,相等為假

 -gt:被測(cè)試的兩個(gè)數(shù)值,左邊的是否大于右邊的,大于為真,不大于為假

 -lt:被測(cè)試的兩個(gè)數(shù)值,左邊的是否小于右邊的,小于為真,不小于為假

 -ge:被測(cè)試的兩個(gè)數(shù)值,左邊的是否大于等于右邊的,大于等于為真,小于為假

 -le:被測(cè)試的兩個(gè)數(shù)值,左邊的是否小于等于右邊的,小于等于為真,大于為假

2.字符串測(cè)試

 雙目操作符:

 ==|=:被測(cè)試的兩個(gè)字符串是否相同,相同為真,不同為假

 !=:被測(cè)試的兩個(gè)字符串是否不相同,不同為真,相同為假

 >: 被測(cè)試的兩個(gè)字符串在ASCII碼表中對(duì)應(yīng)的二進(jìn)制數(shù)值,左邊是否大于右邊,大于為真,小于為假

 <: 被測(cè)試的兩個(gè)字符串在ASCII碼表中對(duì)應(yīng)的二進(jìn)制數(shù)值,左邊是否小于右邊,小于為真,大于為假

 注意:>和<必須用在` EXPRSSION `

 =~:被測(cè)試的兩個(gè)字符串,左側(cè)字符串能否被右側(cè)的PATTERN匹配,如果能匹配則為真,不能匹配為假

單目操作符

 -z 'STRING':判斷指定的字符串是否為空串,空為真,不空為假;

 -n 'STRING':判斷指定的字符串是否為非空字符串,非空為真,空為假;

 注意:1.通常情況下,字符串要加引號(hào),單引號(hào)雙引號(hào)都可以,根據(jù)實(shí)際情況選擇即可

   2.[[]]和[]在某些情況下可能意義不同,要區(qū)分使用,

   3.表達(dá)式兩端以及操作符兩端都要有空格

3.文件狀態(tài)測(cè)試

  單目測(cè)試

  文件的存在性測(cè)試:如果被測(cè)試的文件存在為真,不存在為假

  -a|-e  [ -e /backup]

  文件類型測(cè)試:(先測(cè)試存在性)

  -b FILE:被測(cè)試的文件是否存在并且是否為塊設(shè)備;存在且為塊設(shè)備為真,否則為假

  -c FILE:被測(cè)試的文件是否存在并且是否為字符設(shè)備;

  -d FILE:被測(cè)試的文件是否存在并且是否為目錄文件;

  -f FILE:被測(cè)試的文件是否存在并且是否為普通文件;

  -h|-L FILE :被測(cè)試的文件是否存在并且是否為符號(hào)鏈接文件;

  -p FILE: 被測(cè)試的文件是否存在并且是否為管道文件;

  -S FILE: 被測(cè)試的文件是否存在并且是否為套接字文件;

 文件的訪問權(quán)限測(cè)試:

  -r FILE:被測(cè)試的文件是否存在并且當(dāng)前有效用戶可讀,文件存在且當(dāng)前有效用戶可讀為真,否則為假

  -w FILE:被測(cè)試的文件是否存在并且當(dāng)前有效用戶可寫

  -x FILE:被測(cè)試的文件是否存在并且當(dāng)前有效用戶課執(zhí)行

 文件的特殊權(quán)限標(biāo)識(shí)測(cè)試

  -u FILE:被測(cè)試的文件是否存在并且設(shè)置了SUID權(quán)限,文件存在并且設(shè)置了SUID權(quán)限為真,否則為假

  -g FILE:被測(cè)試的文件是否存在并且設(shè)置了SGID權(quán)限

  -k FILE:被測(cè)試的文件是否存在并且設(shè)置了 STICKY權(quán)限

 文件的所有權(quán)測(cè)試:

  -O FILE:被測(cè)試的文件是否存在并且其屬主是否為當(dāng)前有效用戶,

  -G FILE:被測(cè)試的文件是否存在并且其屬組是否為當(dāng)前有效用戶的組,

 文件內(nèi)容是否為空:

  -s FILE: 被測(cè)試的文件是否存在且內(nèi)容不空,存在且內(nèi)容不空為真,否則為假

 時(shí)間戳測(cè)試:

  -N FILE:被測(cè)試的文件自從上一次被修改之后,是否被修改過,沒被修改為真,修改為假

 雙目測(cè)試:

 FILE1 -ef FILE2: 測(cè)試兩個(gè)文件是否指向同一個(gè)文件系統(tǒng)的相同iNode硬鏈接

 FILE1 -nt FILE2: 被測(cè)試的兩個(gè)文件,file1是否比FILE2更新

 FILE1 -ot FILE2: 被測(cè)試的兩個(gè)文件,file1是否比FILE2更舊

 測(cè)試語句中可以添加邏輯運(yùn)算

 [ -O /tmp/test -a -s /tmp/test ]  與  o是或  !取反

 命令的執(zhí)行狀態(tài):

 正常的輸出結(jié)果:

 命令的執(zhí)行狀態(tài)返回值:

 0~255

 當(dāng)shell腳本運(yùn)行時(shí),一旦遇到exit命令,將立即結(jié)束當(dāng)前shell,同時(shí)腳本的運(yùn)行也將被停止,即exit之后的命令都不在被解釋執(zhí)行;

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。

分享題目:shell腳本,測(cè)試-創(chuàng)新互聯(lián)
鏈接URL:http://bm7419.com/article34/cdiipe.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導(dǎo)航電子商務(wù)、外貿(mào)網(wǎng)站建設(shè)軟件開發(fā)、外貿(mào)建站、定制網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

搜索引擎優(yōu)化