Shell 函数

Shell 函数

一、shell 函数的定义

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

1、shell 函数格式

(1)格式一

function  函数名 {
         命令序列
}

(2)格式二

函数名 () {
   命令序列
}

 二、函数返回值

1、概述

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

2、使用远侧

(1)函数一结束就取返回值,因为 $? 变量只返回执行的最后一条命令的退出状态码

(2)退出状态码必须是 0~255,超出时值将为除以 256 取余

function sum {
   read -p "请输入: " value 
   return $ [$value * 2]
}
sum
echo $?


sum2 () {
   read -p "请输入: " value
   echo $ [$value * 2]
}
result=`sum2`
echo $result

 三、传参

sum() {
    s=$[$1 + $2]
    echo $s
}
first=$1
second=$2
sum $
1 $2

 四、函数变量的作用范围

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

 五、递归

  • 函数调用自己本身的函数

1、阶乘

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 $n 的阶乘结果为 $result

 2、递归查目录

 六、函数库

  • 把常用的函数放入一个单独的库脚本中,方便脚本在使用时,可直接调用这个库中的函数

1、先创建一个计算函数库

2、调用函数库

 

posted @ 2021-08-01 18:25  YhtWeirdo  阅读(46)  评论(0编辑  收藏  举报