shell函数

一、shell函数定义

二、函数返回值

三、函数传参

四、函数变量的作用范围

五、递归

六、创建库 

 

 

Shell函数∶

将命令序列按格式写在一起可方便重复使用命令序列

一、shell函数定义

function 函数名{
     命令序列
}
函数名() {
     命令序列
}

 

二、函数返回值

return表示退出函数并返回一个退出值,脚本中可以用 $?变量显示该值

使用原则:
1.函数一-结束就取返回值,因为$?变量只返回执行的最后一条命令的退出状态码
2.退出状态码必须是0~255,超出时值将为除以256取余

 

 

 

 

三、函数传参

 

 

四、函数变量的作用范围

• 函数在Shell脚本中仅在当前Shell环境中有效
• Shell脚本中变量默认全局有效
• 将变量限定在函数内部使用local命令

1 myfun() {
2 local i
3 i=8
4 echo $i
5 }
6 i=9
7 myfun
8 echo $i

 

 

 

五、递归

函数调用自己本身的函数

阶乘

 1 fact () {
 2   if[ $1 -eq 1 ]
 3   then
 4     echo 1
 5   else 
 6     local temp=$[$1 - 1]
 7     local result=$(fact $temp)
 8     echo $[$1 * $result]
 9  # 5 * Sresult (4*Sresult (3*$result (2*$resu1t(1))))
10   fi
11 }
12 read -p "请输入:” n
13 result=$(fact $n)
14 echo $result

 

 

递归目录

 

六、创建库 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  

  

posted @ 2021-07-20 09:54  咖啡coffee  阅读(53)  评论(0)    收藏  举报