深入学习ing

shell函数function使用return和echo作用区别

Shell函数返回值,常用的两种方式:returnecho

1) return 语句
shell函数的返回值,可以和其他语言的返回值一样,通过return语句返回。

Shell 函数返回值只能是整形数值,一般是用来表示函数执行成功与否的,0表示成功,其他值表示失败。因而用函数返回值来返回函数执行结果是不合适的。如果要硬生生地return某个计算结果,比如一个字符串,往往会得到错误提示:“numeric
argument required”。
如果一定要让函数返回一个或多个值,可以定义全局变量,函数将计算结果赋给全局变量,然后脚本中其他地方通过访问全局变量,就可以获得那个函数“返回”的一个或多个执行结果了。

 

A、如何调用shell函数(执行函数):函数名 参数

B、获取shell函数结果:$?

C、另外,可以直接用函数的返回值用作if的判断。(示例3)

注意:return只能用来返回整数值,且和c的区别是返回“0”为正确,其他的值为错误。

 

2) echo 返回值

其实在shell中,函数的返回值有一个非常安全的返回方式,即通过输出到标准输出返回。因为子进程会继承父进程的标准输出,因此,子进程的输出也就直接反应到父进程。

 

总结:所以,可以总结一下函数返回值获取的方法:

1)用变量接收函数返回值,函数用echo等标准输出将要返回的东西打印出来。

2)用$?来接收函数的执行状态,但是$?要紧跟在函数调用处的后面。

 

参考文章:shell函数(调用、返回值,返回值获取)

posted on 2021-04-14 15:50  深入学习ing  阅读(3112)  评论(0编辑  收藏  举报

导航