博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
shell学习之创建函数
阅读量:6239 次
发布时间:2019-06-22

本文共 626 字,大约阅读时间需要 2 分钟。

hot3.png

函数是一个脚本代码块,你可以为其命名并在代码中任何位置重用。

在bash shell脚本中创建函数基本使用如下两种方式,第二种格式更接近于其他编程语言中定义函数的方式。

function name {commands} 或者name() { commands }

简单写一个demo

e3f696b9427bc22f3d4b95e5fcf47982001.jpg

输出:

f9df55f1d5f1421785746b0efd760956253.jpg

当然我们在使用函数的时候希望有返回值,在之前的学习中,已经知道,函数执行完会返回默认的值,成功则返回0,那么我们如果想返回自己的定义码可以用return,return命令来退出函数并返回特定的退出状态码。

4767345c12fa2d762ac24fef89499ad44af.jpg

执行结果:

88928d8d1fe74b88ca73f5d56a96bb2dc48.jpg

正如可以将命令的输出保存到shell变量中一样,你也可以对函数的输出采用同样的处理办法。可以用这种技术来获得任何类型的函数输出,并将其保存到变量中。

02a6a5d77f1321bfb2090372b3e232f05b2.jpg

执行输出:

078887285587d0318a687b60ad47b4b0dbc.jpg

函数会用echo语句来显示计算的结果。该脚本会获取myfunc2函数的输出,而不是查看退出状态码。

函数可以使用标准的参数环境变量来表示命令行上传给函数的参数。例如,函数名会在$0 变量中定义,函数命令行上的任何参数都会通过$1、$2等定义

d9131b493f66314428a1639a434221924b3.jpg

执行输出:

0e74e5be26d1df2ae68791ffdef12bcaa35.jpg

默认情况下,你在脚本中定义的任何变量都是全局变量。在函数外定义的变量可在函数内正常访问。

无需在函数中使用全局变量,函数内部使用的任何变量都可以被声明成局部变量。要实现这 一点,只要在变量声明的前面加上local关键字就可以了

转载于:https://my.oschina.net/u/2277632/blog/2250277

你可能感兴趣的文章
bash腳本編程之三 条件判断及算数运算
查看>>
php cookie
查看>>
linux下redis安装
查看>>
量子通信和大数据最有市场突破前景
查看>>
如何申请开通微信多客服功能
查看>>
Sr_C++_Engineer_(LBS_Engine@Global Map Dept.)
查看>>
非监督学习算法:异常检测
查看>>
jquery的checkbox,radio,select等方法总结
查看>>
Linux coredump
查看>>
Ubuntu 10.04安装水晶(Mercury)无线网卡驱动
查看>>
我的友情链接
查看>>
ElasticSearch 2 (32) - 信息聚合系列之范围限定
查看>>
VS2010远程调试C#程序
查看>>
[MicroPython]TurniBit开发板DIY自动窗帘模拟系统
查看>>
从Handler.post(Runnable r)再一次梳理Android的消息机制(以及handler的内存泄露)
查看>>
windows查看端口占用
查看>>
Yii用ajax实现无刷新检索更新CListView数据
查看>>
JDBC的事务
查看>>
App 卸载记录
查看>>
JavaScript变量和作用域
查看>>