源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

Shell中函数返回值超出问题

  • 时间:2022-10-04 08:08 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:Shell中函数返回值超出问题
[b]1、前言[/b]   快半年没有写博客了,荒废了很久,工作中的杂事太多,自己越来越懒了。为了鞭策自己成长,还是要坚持写写博客,记录自己的成长。 [b]2、shell函数介绍[/b] 语法:
[u]复制代码[/u] 代码如下:
 [ function ] funname [()] {   action;     [return int;]  }  
说明: (1)可以带function fun()  定义,也可以直接fun() 定义,不带任何参数。 (2)参数返回,可以显示加:return 返回,如果不加,将以最后一条命令运行结果,作为返回值。 return后跟数值n(0-255),还可以通过echo 直接返回。 [b]3、注意[/b]       shell中通过return返回是有限制的,最大返回255,超过255,则从0开始计算。 今天在工作中犯了这个错误,导致输出的值不对,被测试部提bug。 shell脚本调用例子:
[u]复制代码[/u] 代码如下:
#!/bin/sh echo "shell function operation" func1() {     local num1=100     local num2=100     let sum=$num1+$num2     return $sum } func2() {     local num1=100     local num2=155     let sum=$num1+$num2     return $sum } func3() {     local num1=100     local num2=156     let sum=$num1+$num2     return $sum } func4() {     local num1=100     local num2=156     let sum=$num1+$num2     echo $sum } func1 echo "called func1:$?" func2 echo "called func2:$?" func3 echo "called func3:$?" sum=`func4` echo "called func4:$sum"
执行结果如下所示: [img]http://files.jb51.net/file_images/article/201505/201552684550950.jpg?201542684614[/img]
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部