shell編程筆記(三)__編程

來源:互聯網
上載者:User

變數置換 命令置換 算式置換 引用 使用反斜線實現引用 使用單引號 使用雙引號

變數置換

變數置換一共有四種形式 預設值置換
文法格式:${param:=word}
如果param值為空白,或者未賦值,那麼word將替代param作為該運算式的傳回值,但並不改變param的值
樣本如下:

可以很清楚地看到,myfruit變數的值依然還是空的,fruit變數的值變成了APPLE 預設值賦值
文法格式:${param:=word}
如果param值為空白,或者未賦值,那麼word將把自己的值賦給param
樣本如下:
空值錯誤
文法格式:${param:?msg}
當變數param未賦值或者為空白的時候,會輸出一個錯誤資訊msg到STDERR
樣本如下:
有值置換
文法格式:${param:+word}
如果變數param有值,變數word取代param作為運算式的傳回值,但param的值不變
樣本如下:
命令置換

就是將命令的輸出結果作為變數的值賦給變數
樣本:

我麼也可以直接將命令置換作為其他命令的參數:
算式置換

可以協助使用者在shell完成基本的整數運算
文法格式$((expr))
引用 使用反斜線實現引用


其實這個反斜線\就是起到一個轉義的作用,使得具有特殊意義的字元失效
引用即為轉義,此處不再贅述 使用單引號

對於一個包含了很多特殊字元的echo語句,我們可以直接使用單引號把要輸出的語句引起來
使用雙引號

使用單引號的局限性是很大的,它把所有的特殊符號都給轉義了,使用雙引號就不會出現這種問題,雙引號禁止了除$ 和 '以外的所有元字元,使用反引號 ` 引起來的命令會被正常執行:

相關文章

聯繫我們

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