每天开心一点

Shell函数返回值(return关键字)

2020-09-09 07:02:00    六月    990    来源: https://tsov.net/uupee/8696/

在C++、Java、C#、Python等大部分编程语言中,返回值是指函数被调用之后,执行函数体中的代码所得到的结果,这个结果就通过return语句返回。

但是Shell中的返回值表示的是函数的退出状态:返回值为0表示函数执行成功了,返回值为非0表示函数执行失败(出错)了。if、while、for等语句都是根据函数的退出状态来判断条件是否成立。

Shell函数的返回值只能是一个介于0~255之间的整数,其中只有0表示成功,其它值都表示失败。

一种是借助全局变量,将得到的结果赋值给全局变量;

一种是在函数内部使用echo、printf命令将结果输出,在函数外部使用 $()或者 ``捕获结果。

#!/bin/bash
funWithReturn(){
    echo "这个函数会对输入的两个数字进行相加运算..."
    echo "输入第一个数字: "
    read aNum
    echo "输入第二个数字: "
    read anotherNum
    echo "两个数字分别为 $aNum 和 $anotherNum !"
    return $(($aNum+$anotherNum))           #return `expr $aNum + $anotherNum`
}
funWithReturn
echo "输入的两个数字之和为 $? !

参考: https://blog.csdn.net/twc829/article/details/76110388

https://www.cnblogs.com/keystone/p/13260564.html