shell 编程(7)之函数
函数使用
创建函数
- 使用function
function name {
commands
}
脚本中定义函数必须有唯一的名称
- 类似编程语言
name() {
commands
}
函数的使用
只需要在行中指定函数名即可
变量在函数中
- 向函数传递参数
- 使用标准参数环境变量来进行传参,例如,函数名在 $0 中定义,函数命令行上的任何参数听过 $1、$2定义
- 使用特殊变量 $# 来进行传参
ps:在脚本中指定函数时,必须将参数和函数放在同一行,例如:func1 $values 10
注意:脚本中不要光些函数,必须要有调用函数的东西,要不然脚本等于没写
函数递归
函数库
引入函数库概念是为了省去重复性工作,我们可以使用bash shell创建函数库文件。然后在脚本中引入库文件即可
步骤:
- 创建一个包含脚本中所需函数的公用库文件,shell 函数仅在定义它的 shell 会话有效
- 使用 source 命令在 shell 脚本中运行库文件脚本
- source 命令中有个快捷的别名给,称作点操作符,在 shell 脚本中添加 . ./库文件名 即可
[oracle@bytest01 ~]$ cat myfun
#!/bin/bash
function add {
echo $[ $1 + $2 ]
}
function sub {
echo $[ $1 - $2 ]
}
function mul {
echo $[ $1 * $2 ]
}
function divem {
if [ $2 -ne 0 ]
then
echo $[ $1 / $2 ]
else
echo -1
fi
}
[oracle@bytest01 ~]$ cat mytest
#!/bin/bash
. ./myfun
read -p "enter value:" value1
read -p "enter value2:" value2
result1=$(add $value1 $value2)
echo "add result is $result1"
哪有什么胜利可言,坚持意味着一切。如想使用请备注转载链接~