shell中函數的定義方法如下:
func(){
echo "func used"
}
func # 直接使用函數的名字就可以調用
傳遞參數的函數
對shell中的函數傳遞參數不需要提前在shell函數中定義參數類型和數量
func(){
echo "輸入的第一個數是:$1"
echo "輸入的第二個數是:$2"
echo "輸入的第三個數是:$3"
echo "輸入的第四個數是:$4"
echo "輸入的第五個數是:$5"
echo "所有輸入爲:$*"
}
func 1 2 3 4 5 # 調用函數並且傳遞參數
輸出:
輸入的第一個數是:1
輸入的第二個數是:2
輸入的第三個數是:3
輸入的第四個數是:4
輸入的第五個數是:5
所有輸入爲:1 2 3 4 5 6
帶有返回參數的函數
使用$n表示獲得的參數,使用return返回計算結果,計算結果使用$?獲得
multi(){
return `expr $1 \* $2`
}
multi 3 9
echo $?
27
- 注意:使用10及10以上的參數時,需要使用${n}來使用參數
- 用來處理特殊參數的符號仍然可以使用,例如:$#、$!、$$等特殊符號
shell中的函數返回值
注意:shell中函數的返回結果 返回0是正常,非0是錯誤