shell编程函数

95 阅读1分钟

Shell函数:

使用函数可以避免代码重复 使用函数可以将大的工程分割为若干小的功能模块,代码的可读性更强

Shell函数的定义:

【1】

function函数名 {

命令序列

}

【2】

函数名() {

命令序列

}

20220831182008.png

函数返回值:

return表示退出函数并返回一个退出值,脚本中可以用$?变量显示该值使用原则:

1、函数一结束就取返回值,因为$?变量只返回执行的最后一条命令的退出状态码

2、退出状态码必须是0~255,超出时值将为除以256取余

函数返回值:

return表示退出函数并返回一个退出值,脚本中可以用$?变量显示该值使用原则:

1、函数一结束就取返回值,因为$?变量只返回执行的最后一条命令的退出状态码

2、退出状态码必须是0~255,超出时值将为除以256取余

20220831182626.png

20220831182644.png

20220831182848.png

20220831183433.png

函数传参

20220831185934.png

20220831190039.png

20220831190712.png

20220831190432.png

补充: 20220831184416.png

函数变量的作用范围:

函数在shel1脚本中仅在当前shell环境中有效

shell脚本中变量默认全局有效

将变量限定在函数内部使用local命令

20220831191706.png

20220831191720.png

函数递归

实现阶乘 20220831193400.png

20220831193309.png

把/var/log下的文件和目录区分出来并输出 20220831200004.png

20220831200152.png

函数库

如果函数库文件中定义了变量的话,切换bash环境就不生效了。所以在脚本中引用函数库文件时,一定要使用"source"或 "." 。

创建数据库文件 20220901171631.png

在其他shell环境中引用函数库的文件 20220901171752.png

运行 20220901171922.png