Shell函数
时间:2014-07-11 00:40 来源:linux.it.net.cn 作者:IT网
本教程目前为止所有脚本都是从头到尾执行。这样做很好,但你也许已经注意到有些脚本段间互相重复。
shell允许将一组命令集或语句形成一个可用块,这些块称为shell函数。
shell中函数的定义格式如下:
函数名(){
command1
command2
...
commandN
[ return value ]
}
如果愿意,可在函数名前加上关键字function,这取决于使用者。
function 函数名(){
command1
command2
...
commandN
[ return value ]
}
函数返回值,可以显示增加return语句;如果不加,则将最后一条命令运行结果作为返回值(一般为0,如果执行失败则返回错误代码)。 return后跟数值(0-255)。
函数可以放在同一个文件中作为一段代码,也可以放在只包含函数的单独文件中。函数不必包含很多语句或命令,甚至可以只包含一个echo语句,这取决于使用者。
下面的例子定义了一个函数并进行调用:
输出:
Function begin...
This is your first shell function!
Function end!
下面定义一个带有return语句的函数:
输出类似下面:
The function is to get the sum of two numbers...
Input first number: 25
Input another number: 50
The two numbers are 25 and 50 !
The sum of two numbers is 75 !
函数返回值在调用该函数后通过 $? 来获得。
注意:所有函数在使用前必须定义。这意味着必须将函数放在脚本开始部分,直至shell解释器首次发现它时,才可以使用。调用函数仅使用其函数名即可。 (责任编辑:IT)
本教程目前为止所有脚本都是从头到尾执行。这样做很好,但你也许已经注意到有些脚本段间互相重复。 shell允许将一组命令集或语句形成一个可用块,这些块称为shell函数。 shell中函数的定义格式如下: 函数名(){ command1 command2 ... commandN [ return value ] } 如果愿意,可在函数名前加上关键字function,这取决于使用者。 function 函数名(){ command1 command2 ... commandN [ return value ] } 函数返回值,可以显示增加return语句;如果不加,则将最后一条命令运行结果作为返回值(一般为0,如果执行失败则返回错误代码)。 return后跟数值(0-255)。 函数可以放在同一个文件中作为一段代码,也可以放在只包含函数的单独文件中。函数不必包含很多语句或命令,甚至可以只包含一个echo语句,这取决于使用者。 下面的例子定义了一个函数并进行调用: 输出: Function begin... This is your first shell function! Function end! 下面定义一个带有return语句的函数: 输出类似下面: The function is to get the sum of two numbers... Input first number: 25 Input another number: 50 The two numbers are 25 and 50 ! The sum of two numbers is 75 ! 函数返回值在调用该函数后通过 $? 来获得。 注意:所有函数在使用前必须定义。这意味着必须将函数放在脚本开始部分,直至shell解释器首次发现它时,才可以使用。调用函数仅使用其函数名即可。 (责任编辑:IT) |