函数是一个脚本代码块,你可以为其命名并在代码中任何位置重用。
在bash shell脚本中创建函数基本使用如下两种方式,第二种格式更接近于其他编程语言中定义函数的方式。
function name {commands} 或者name() { commands }
简单写一个demo
输出:
当然我们在使用函数的时候希望有返回值,在之前的学习中,已经知道,函数执行完会返回默认的值,成功则返回0,那么我们如果想返回自己的定义码可以用return,return命令来退出函数并返回特定的退出状态码。
执行结果:
正如可以将命令的输出保存到shell变量中一样,你也可以对函数的输出采用同样的处理办法。可以用这种技术来获得任何类型的函数输出,并将其保存到变量中。
执行输出:
函数会用echo语句来显示计算的结果。该脚本会获取myfunc2函数的输出,而不是查看退出状态码。
函数可以使用标准的参数环境变量来表示命令行上传给函数的参数。例如,函数名会在$0 变量中定义,函数命令行上的任何参数都会通过$1、$2等定义
执行输出:
默认情况下,你在脚本中定义的任何变量都是全局变量。在函数外定义的变量可在函数内正常访问。
无需在函数中使用全局变量,函数内部使用的任何变量都可以被声明成局部变量。要实现这 一点,只要在变量声明的前面加上local关键字就可以了