中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

shell腳本學習-語法篇

發布時間:2020-08-05 14:58:57 來源:網絡 閱讀:741 作者:走走停停吧 欄目:編程語言

一. 條件測試:test [
命令test或[可以測試一個條件是否成立,如果測試結果為真,則該命令的Exit Status為0,如果測 試結果為假,則命令的Exit Status為1(注意與C語言的邏輯表示正好相反)。

二。if/then/elif/else/fi
和C語言類似,在Shell中用if、then、elif、else、fi這幾條命令實現分支控制。這種流程控制語
句本質上也是由若干條Shell命令組成的,其實是三條命令,if [ -f ~/.bashrc ]是第一條,then . ~/.bashrc是第二條,fi是第三條。如 果兩條命令寫在同一行則需要用;號隔開,一行只寫一條命令就不需要寫;號了,另外,then后面有 換行,但這條命令沒寫完,Shell會自動續行,把下一行接在then后面當作一條命令處理。和[命令 一樣,要注意命令和各參數之間必須用空格隔開。if命令的參數組成一條子命令,如果該子命令的Exit Status為0(表示真),則執行then后面的子命令,如果Exit Status非0(表示假),則執 行elif、else或者fi后面的子命令。if后面的子命令通常是測試命令,但也可以是其它命 令。Shell腳本沒有{}括號,所以用fi表示if語句塊的結束

三.case命令可類比C語言的switch/case語句,esac表示case語句塊的結束。C語言的case只能匹配整型或字符型常量表達式,而Shell腳本的case可以匹配字符串和Wildcard,每個匹配分支可
以有若干 條命令,末尾必須以;;結束,執行時找到第一個匹配的分支并執行相應的命令,然后直
接跳 到esac之后,不需要像C語言一樣用break跳出。

四.for/do/done

五.5. while/do/done
while的用法和C語言類似

六.函數

和C語言類似,Shell中也有函數的概念,但是函數定義中沒有返回值也沒有參數列表。例如:
注意函數體的左花括號{和后面的命令之間必須有空格或換行,如果將最后一條命令和右花括
號}寫 在同一行,命令末尾必須有;號。
在定義foo()函數時并不執行函數體中的命令,就像定義變量一樣,只是給foo這個名字一個定
義, 到后面調用foo函數的時候(注意Shell中的函數調用不寫括號)才執行函數體中的命令。
Shell腳本中的函數必須先定義后調用,一般把函數定義都寫在腳本的前面,把函數調用和其它
命令寫在腳本 的最后(類似C語言中的main函數,這才是整個腳本實際開始執行命令的地方)。
Shell函數沒有參數列表并不表示不能傳參數,事實上,函數就像是迷你腳本,調用函數時可以傳
任 意個參數,在函數內同樣是用$0、$1、$2等變量來提取參數,函數中的位置參數相當于函數
的局部 變量,改變這些變量并不會影響函數外面的$0、$1、$2等變量。函數中可以用return
命令返回,如 果return后面跟一個數字則表示函數的Exit Status。

例如:

shell腳本學習-語法篇

shell腳本學習-語法篇

shell腳本學習-語法篇


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

乡宁县| 天等县| 旌德县| 东海县| 二手房| 成武县| 临猗县| 昌吉市| 上思县| 宁国市| 兴文县| 阿鲁科尔沁旗| 涿州市| 乐昌市| 崇信县| 宜章县| 徐水县| 青阳县| 垦利县| 大余县| 宁强县| 沙湾县| 平罗县| 修文县| 公安县| 孝感市| 光泽县| 大石桥市| 韶山市| 尉氏县| 西丰县| 东源县| 连云港市| 车致| 漯河市| 阿坝| 阳东县| 和田市| 扎赉特旗| 浪卡子县| 高清|