Shell函数

定义

[function] funName(){
action;
[return int;]
}
可以带function fun()定义,也可以直接fun()定义,不加任何参数。
参数返回,可以显示加return返回,如果不加,将以最后一条命令运行结果,作为返回值。return后跟的值(0-255)
-----------
demoFun(){
echo "这是我的第一个 shell 函数!"
}
echo "-----函数开始执行-----"
demoFun
echo "-----函数执行完毕-----"
-----------

定义一个带return的函数

-----------------------
funWithReturn(){
echo "这个函数会对输入的两个数字进行相加运算..."
echo "输入第一个数字: "
read aNum
echo "输入第二个数字: "
read anotherNum
echo "两个数字分别为 $aNum 和 $anotherNum !"
return $(($aNum+$anotherNum))
}
funWithReturn
echo "输入的两个数字之和为 $? !"
-----------------------
函数返回值在调用该函数后通过$?来获得。$?只能是紧接在函数执行完之后。
所有函数在使用前必须定义。

函数参数

调用函数可以向其传递参数,在函数体内部,通过$n的形式来获取参数的值,例如$1标识第一个参数,$2标识第二个参数。。。
-------------------
funWithParam(){
echo "第一个参数为 $1 !"
echo "第二个参数为 $2 !"
echo "第十个参数为 $10 !"
echo "第十个参数为 ${10} !"
echo "第十一个参数为 ${11} !"
echo "参数总数有 $# 个!"
echo "作为一个字符串输出所有参数 $* !"
}
funWithParam 1 2 3 4 5 6 7 8 9 34 73
-------------------
注意 $10不能获取第十个参数,获取第10个参数需要${10},当n>=10时,需要使用${10}来获取参数。

 

posted @ 2023-04-07 16:35  小路不懂2  阅读(13)  评论(0编辑  收藏  举报