shell 自定义函数 设置返回值

语法:

[ function ] funname [()]

{

    action;操作

    [return $cation;]返回结果

}

说明:

1、可以带function fun()  定义,也可以直接fun() 定义,不带任何参数。

2、参数返回,可以显示加:return 返回,如果不加,将以最后一条命令运行结果,作为返回值。 return后跟变量


$vim test.sh
function ADD()
{
        echo"a==" $1
        echo"b==" $2
        return $(($1+$2))
}

sum=$(ADD $1 $2)
echo $sum
$source test.sh
0
$ADD 100 20
100
20
120

从上面这个例子我们可以知道:

1、必须在调用函数地方之前,声明函数,shell脚本是逐行运行。不像其它语言一样先预编译再执行。因此必须在使用函数前先声明函数。

2、sum=$(ADD $1 $2);  通过这种调用方法,我们清楚知道,在shell 中 单括号里面,可以是:命令语句。 因此,我们可以将shell中的函数,看作是定义一个新的命令,它是命令,因此 各个输入参数直接用 空格分隔。 还需知道,命令里面获得参数方法可以通过:$0…$n得到。 $0代表函数本身。

3、函数返回值,只能通过$? 系统变量获得,直接通过=只能获得空值。根据上一条的理解,因为函数是一个命令,而在shell获得命令返回值,都需要通过$?获得。



转载于:https://my.oschina.net/u/2309138/blog/373088

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值