1、语法
[ function ] funname [()]
{
action;
[return int;]
}
2、说明
(1)、必须在调用函数地方之前,先声明函数,shell脚本是逐行运行。不会像其它语言一样先预编译
(2)、函数返回值,只能通过$? 系统变量获得,可以显示加:return 返回,如果不加,将以最后一条命令运行结果,作为返回值。return后跟数值n(0-255)
(3)、function可以省略,不能带参数,如果要带参数需要在调用的时候后面带上参数
3、示例
[root@localhost shell]# vi testfunc.sh
#!/bin/bash
function sum1(){
return $(($1+$2));
}
sum1 1 2;
v=$?;
echo "sum1===$v====$?";
sum2(){
return $(($1+$2));
}
sum2 2 2;
m=$?;
echo "sum2===$m====$?";
~
~
"testfunc.sh" 15L, 165C written
[root@localhost shell]# sh testfunc.sh
sum1===3====0
sum2===4====0
[root@localhost shell]#