如同其他编程语言一样,shell也是有函数的语法的。那么,shell的函数语法是什么样的呢?
函数就是对某一功能或一些功能进行代码封装,从而实现模块化管理,各种编程语言道理如出一辙。在shell中调用函数的时候,我们可以直接使用函数名。可能不像python那样,如果简单的定义一个无传参函数,调用的时候都是function()的形式,在shell中就简单的写成function即可。当然,有传参的时候那是需要带上参数的。
shell函数两种语法结构
1、
函数名()
{
命令集
}
2、
function 函数名()
{
命令集
}
需要强调的一点是,在对函数进行调用时,不需要带括号()。
函数调用语法
函数名 参数1 参数2...,函数中使用$1,$2的引用来传递参数。
shell函数中的变量为全局变量,没有局部变量。
如上图所示的change函数实现了a变量的重新赋值。
函数参数传递的演示
同时在shell函数中或者普通的shell脚本中,我们不仅会使用简单的if-while等简单的循环,我们更多的时候用到的都是循环的嵌套。所以,我们也有必须要对shell中循环的嵌套有一个了解和认识。
下面我们就来谈一谈循环嵌套,以九九乘法表为例引入。
循环嵌套,顾名思义就是循环里面嵌套循环。
对于循环的嵌套,我们其实知道脚本是如何执行,就很容易理解循环嵌套了。循环嵌套是从里往外执行,从外往里编写。也就是说在执行的时候,最先真正开始执行的是内层循环,然后才是外层循环。
嵌套的指导思想就是:外层循环控制行,内层循环控制列。牢记这一点,就可以比较轻松点掌握双层循环嵌套。至于更多维度的嵌套,原理也是大同小异,那时候我们可能要考虑空间复杂度和时间复杂度的问题,然后进行函数的设计。
本文暂时没有评论,来添加一个吧(●'◡'●)