Shell也有函数
语法格式
[function] funname() {
#code
}
可以带function fun() 定义,也可以直接fun() 定义,不带任何参数
function test() {
echo "Hello world"
}
或者
test() {
echo "Hello world"
}
test #直接名字就可以调用
前面的function可以省略
参数返回,可以显示加:return 返回,如果不加,将以最后一条命令运行结果,作为返回值
funWithReturn(){
echo "这个函数会对输入的两个数字进行相加运算..."
echo "输入第一个数字: "
read aNum
echo "输入第二个数字: "
read anotherNum
echo "两个数字分别为 $aNum 和 $anotherNum !"
return $(($aNum+$anotherNum))
}
funWithReturn
echo "输入的两个数字之和为 $? !"
函数参数
类似shell的执行时的参数, 在调用的时候直接 在后面跟参数
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}。当n>=10时,需要使用${n}来获取参数。
网友评论