bash shell指令碼編程學習概括

來源:互聯網
上載者:User

/*********************************************************************
 * Author  : Samson
 * Date    : 08/01/2013

 * *******************************************************************/

bash shell指令碼編程學習總結:

變數:
(1)環境變數:能夠進行修改;
(2)內部變數:系統提供,不能修改;
$#:得到參數個數
$?:shell程式內部執行shell的傳回值
$0:shell程式的名稱
$1~$9:參數1~9的值
$*:全部參數組成的字串

(3)使用者變數:寫shell時使用者編寫定義的;
注意:使用者變數在shell定義時:在賦值號前後不能有空格;如:var1="test1"

shell指令碼的的幾種執行:
(1)shell解譯器 shellscriptname.sh,此種情況下shellscriptname.sh不用加X執行許可權;
(2)直接在shell script的目錄下執行:./shellscriptname.sh,此種執行方法的前提是此shellscriptname.sh檔案具有x執行許可權;

運算式比較:
命令文法如下:
  test expression
or
  [ expression ]

test命令支援下面4種類型的比較:
(1)字串的比較的expression中的操作符:
= 是否相等
!= 是否不相等
-n 字串長度是否大於0
-Z 字串是否等於0或空

(2)數字比較expression中的操作符:
-eq 是否相等
-ge 是否>=
-le 是否<=
-ne 是否不等於
-gt 是否大於
-lt 是否小於

(3)檔案操作符expression中的操作符:
-d 檔案是否為目錄
-f 檔案是否為普通檔案
-r 檔案是否設定了讀許可權
-s 檔案的長度是否大於0
-w 檔案是否具有寫入權限
-x 檔案是否具有執行許可權
-e 檔案是否存在

(4)邏輯操作符expression中的操作符:
! 對一個邏輯運算式求反
-a 對兩個邏輯運算式執行與操作 AND
-o 對兩個邏輯運算式執行或操作 OR

判斷語句:
if [ expression ]; then
    statements
elif [ expression ]; then
    statements
else
    statements
fi

分支語句:
case $varname in
    str1|str2)
        statements;;
    str3|str4)
        statements;;
    *)
        statements;;
esac    

迴圈語句:
(1)
for curvar in list
do
    statements
done
(2)
while expression
do
    statements
done

until expression
do
    statements
done

break語句:可終止一個重複執行的迴圈
exit語句:退出一個shell程式

函數:
func()
{
    statements
}

調用:func param1,param2,param3
在一個shell指令碼程式中載入另一個shell程式:. card_error.sh

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.