shell程式設計總結

2021-08-14 14:12:04 字數 2108 閱讀 8860

shell程式設計

shell常用萬用字元:

*                         匹配0個或多個字元

?                        匹配任意乙個字元

[list]                      匹配list中的任意單一字元

[!list]                     匹配出list中的任意單一字元以外的字元

[c1-c2]                   匹配c1-c2中的任意單一字元

[string1,string2,…]        匹配string1,string2(或更多)其一字串

[c1..c2]                   匹配才-出中的全部字元

shell的位置變數

¥0                      表示這個程式的檔名

$1$2 … $9               表示程式從第乙個到第九個命令的引數值

$#                       這個程式的引數個數(不包含命令名)

$*                       把這個陳旭的所有引數:「$1 $2 … $9」,把所有引數儲存在乙個陣列中

$!                       執行上乙個背景指令的pid

$?                       執行上乙個命令的返回值

$$                      這個程式的程序id號

if 語句

1、 乙個條件判斷

if[條件判斷式]

then    當條件判斷成時,可進行命令執行

else    當條件判斷不成立時,可進行命令執行

fi       關閉if標籤

2、 多個條件判斷(if…elif… else) 可分多種不同情況執行

if[條件判斷式1]; then

當條件判斷式1成立時,可執行命令

elif[條件判斷式2] then

當條件判斷式2成立時,可執行命令

ficase語句

case字串 in

模式字串1)命令

命令;;

模式字串2)命令

命令;;

模式字串n)命令

命令;;

esac          關閉case標籤

注:case語法中,是以case為開頭的,而期結束為esac(反寫)。此外,對每個變數內容的程式段最後都需要加兩個分號(;;)來表示該程式段的結束。至於這個變數的內容最後使用*,是因為如果使用者輸入第乙個獲第二個變數內容時,可告知相關資訊。

while語句

while[condition] < === 中括號內的狀態就是判斷式

do              < === 程式的開始

程式段落

done            < === 迴圈結束

當中括號中的條件不成立時,迴圈停止

until[condition] < === 中括號內的狀態式判斷式

do              < === 迴圈的開始

程式段done            < === 迴圈結束

until迴圈語句while迴圈相反,當中括號裡的條件成立時,結束迴圈

for語句

for((初始值;限制值; 執行步長))

do              < === 迴圈開始

程式段done            < === 迴圈結束

這種語法時刻於數值方式運算當中

九九乘法表:

for寫法

另一種寫法:

while寫法

shell程式設計總結

一 簡單shell程式示例 在乙個檔案中輸入,假設檔名為ex1 cat ex1 date pwd執行此程式時,輸入的命令則會實現 出現日期以及當前的路徑 二 建立shell指令碼 建立乙個shell指令碼可以利用編輯器vi進行 三 編寫內容 例如 echo hello word 但如果想要執行出來則...

shell程式設計總結

shell程式設計中,使用變數無需事先宣告,同時變數名的命名須遵循如下規則 首個字元必須為字母 a z,a z 中間不能有空格,可以使用下劃線 不能使用標點符號 不能使用bash裡的關鍵字 可用help命令檢視保留關鍵字 需要給變數賦值時,可以這麼寫 變數名 值要取用乙個變數的值,只需在變數名前面加...

shell程式設計總結

一 shell的特點 一種高階程式語言,有變數 關鍵字 條件控制語句,如if case while for這些語句。有自己的語法結構。二 1 檢視系統使用的shell echo shell 2 檢視shell的位置 cd bin 三 執行shell指令碼的方法 1 輸入定向到shell指令碼 bas...