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函数(调用、返回值,返回值获取)


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM