函数结果为88 -return后跟数值n(0-255),不能超过255,所以返回值结果为88

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

2.函数返回值,只能通过$? 系统变量获得,可以显示加:return 返回,
如果不加,将以最后一条命令运行结果,作为返回值。 return后跟数值n(0-255),不能超过255,所以返回值结果为88

3、调试结果 

sh -vx functionshell.sh
#!/bin/bash

function addnum()
{
  echo $1,$2
  return $(($1+$2))
}    

addnum 200 400  #多个变量以空格隔开
sum=$?  #只能这样获取上一个语句执行结果
echo $sum



function addnum1()
{
  echo $1,$2
  sum1=$(($1+$2))
  return $sum1
}

addnum1 200 400  #多个变量以空格隔开
sum1=$?  #只能这样获取上一个语句执行结果
echo $sum1
[app@VM_4_53_centos cfltest]$ ./functionshell.sh
200,400
88
200,400
88
[app@VM_4_53_centos cfltest]$ vi functionshell.sh
[app@VM_4_53_centos cfltest]$ sh -vx functionshell.sh
#!/bin/bash

function addnum()
{
  echo $1,$2
  return $(($1+$2))
} 

addnum 200 400  #多个变量以空格隔开
+ addnum 200 400
+ echo 200,400
200,400
+ return 600
sum=$?  #只能这样获取上一个语句执行结果
+ sum=88
echo $sum
+ echo 88
88
原文地址:https://www.cnblogs.com/shishibuwan/p/11246523.html