1.linux shell可以使用者定義函式,然後在shell指令碼中可以隨便呼叫:
shell中函式的定義格式如下:
:(1)可以帶function fun()定義,也可以直接fun()定義,不帶任何引數[function] funname [()]
!
(2)引數返回,可以顯示加:return返回,如果不加,將以最後一條命令執行結果,做為返回值,return後跟數值n(0-255)
2.函式例項:
demofun()執行結果:echo
"-----函式開始執行-----
"demofun
echo
"-----函式執行完畢-----
"funwithreturn()
funwithreturn
echo
"輸入的兩個數字之和為 $? !
"
(1)函式返回值在呼叫該函式後通過 $? 來獲得
(2)所有函式在使用前必須定義,這意味著必須將函式放在指令碼開始部分,直至shell直譯器首次發現它時,才可以使用,呼叫函式僅使用其函式名即可
3.函式引數:在shell中,呼叫函式時可以向其傳遞引數,在函式體內部,通過 $n 的形式來獲取引數的值
例如,$1 表示第乙個引數,$2 表示第二個引數........
帶引數的函式例項:
funwithparam() !執行結果:"echo "第十乙個引數為 $ !" //當n>=10時,需要使用$來獲取引數。
echo
"引數總數有 $# 個!
"echo
"作為乙個字串輸出所有引數 $* !"}
funwithparam 12
3456
78934
73
Shell指令碼程式設計之Shell陣列
1.bash支援一維陣列 不支援多維陣列 並且沒有限定陣列的大小 1 定義陣列 array name value0 value1 value2 value3 或者array name value0 value1 value2 value3 或者單獨定義 2 讀取陣列 使用 符號可以獲取陣列中的所有元...
Shell指令碼程式設計之Shell檔案包含
1.和其他語言一樣,shell也可以包含外部指令碼,這樣可以很方便的封裝一些公用的 作為獨立的檔案 例項 testshellfileinclude.sh 指令碼如下 bin bash shell 檔案包含的語法格式如下 filename orsource filename 使用 號來引用test1....
Shell指令碼程式設計之Shell傳遞引數
1.我們可在執行指令碼的時候向指令碼傳遞引數,指令碼內獲取引數的格式為 n,n代表乙個數字,1為執行指令碼的第乙個引數,2為執行指令碼的第二個引數,以此類推 授權後執行,結果如下 2.處理引數的方法 傳遞到指令碼的引數個數 以乙個單字串顯示所有向指令碼傳遞的引數 指令碼執行的當前程序id號 後台執行...