shell函式

weixin_42601148發表於2020-12-23

1、函式的概念:將命令序列按格式寫在一起,可方便重複使用命令序列。
2、shell函式的表示式:
1)、function 函式名 {

  命令序列 

};
2)、函式名 () {

命令序列
}

3、函式返回值return:
return表示退出函式並返回一個值,指令碼中可以使用$?表示該值;
退出狀態碼在0~255,超出時取除以256,取餘
4、 函式傳參:

abc() {

abc=$[$1+$2]
echo abc

}
abc $1 $2
5、函式在shell指令碼中僅在當前shell環境中有效
shell指令碼中的變數預設為全域性變數
將變數限定在函式內部使用,用local命令
6、遞迴函式:
階乘:
fact() {
if [ $1-eq 1 ]
then
echo 1
else
local temp=$[$1-1]
local result=$(fact $temp)
echo $[$1 * $result]
fi
}
read -p “請輸入:” n
result=$(fact $n)
echo $resault

相關文章