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是错误