shell編程基本文法

來源:互聯網
上載者:User

標籤:RoCE   ash   c11   訪問   計算   linu   其他   ebe   必須   

編寫shell指令碼的時候,最前面要加上一行:#!/bin/bash,因為linux裡面不僅僅只有bash一個解析器,還有其它的,它們之間的文法會有一些不同,所以最好加上這一句話,告訴系統要用這個解析器。

一.shell變數

shell變數和一些程式設計語言不同,一般shell的變數賦值的時候不用帶“$”,而使用或者輸出的時候要帶“$”。加減乘除的時候要加兩層小括弧。括弧外面要有一個“$”,括弧裡面的變數可以不用“$”。需要注意的是,變數賦值,變數使用的時候不能有空格,否則會被解析成命令,報錯無此命令。

例子:

結果如:

二.shellVariant 運算式

例子:

結果

三.shell測試判斷test或[]

需要注意的是使用[]的時候必須要每個變數之間都要有空格,和左右中括弧也要有空格,否則報錯。

結果

四.shell條件分支結構語句

1.單分支判斷語句

格式:if 條件 ; then 結果 fi ,最後面一定要有fi,在shell指令碼裡面,控制分支結構結束都要和開頭的單詞相反,例如,if <–> fi,case <–> esac。

結果

2.雙分支判斷語句

結果

3.多分支判斷語句

多分支判斷有兩種,和C語言的一樣 if else if,case。只是形式上有一些不同。

結果


結果

五.shell迴圈語句

1.while語句

while語句是只要條件為真就執行下面語句。
格式:
while 條件
do
語句
done

需要注意的是,這裡的條件除了 while true 可以這樣寫,其它的條件都要用 test或者 []來判斷


2.until語句

until語句是只要條件為假就執行下列語句
格式:
until 條件
do
語句
done

結果

3.for語句

格式:
for 變數 in 列表
do
語句
done

結果

六.shell函數

格式:
[function] funcName()
{
語句
[return 傳回值]
}
傳回值是可選的,如果沒有顯示return 則預設返回最後一條語句執行的結果。

Shell 函數傳回值只能是整數,一般用來表示函數執行成功與否,0表示成功,其他值表示失敗。如果 return 其他資料,比如一個字串,往往會得到錯誤提示:“numeric argument required”。

如果一定要讓函數返回字串,那麼可以先定義一個變數,用來接收函數的計算結果,指令碼在需要的時候訪問這個變數來獲得函數傳回值。

函數參數從$1到$n,$0 是檔案名稱。

例子:

結果

返回字串,報錯

結果

shell編程基本文法

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.