$ function sum()
> {
> echo $1 $2;
> return $(($1+$2))
> }
$ sum 1 2
1 2
$ x=$(sum 1 2)
$ echo $x
1 2
我真的希望$ x为3.但似乎仍然是“回声”结果。如何修复我的功能?
答案 0 :(得分:1)
请勿使用return
。只需将总和回显为:
sum() { echo $(($1 + $2)); }
然后将其用作:
x=$(sum 1 2)
echo $x
3
调用函数后,使用return
捕获函数的 $?
(或退出)值。但是,建议不要使用return
,因为在函数中只能返回0-255个整数值。