shell编程(九)函数
C/C++中的函数
int func(int a, int b)
{
return a+b;
}
在C/C++中,函数定义出,必须要有以下部分
- 函数名
- 返回值类型
- 参数列表
- return进行返回
优点:比较精细,使用起来比较收约束,但是在该约束的情况下使用比较方便。
shell中的函数
一般shell中的函数用来做一些shell的集合,这样可以使整个过程集合在一起,不会丢下某部分或者跳过某部分。
函数的定义有两种方法
1. 加上function关键字进行定义
#!/bin/bash
#by author dhy
#test function
function func1() #加关键字的定义
{
echo "this is the first function!"
}
2. 省去关键字,直接定义
func1() #直接定义
{
echo "this is the first function!"
}
语法和作用
#!/bin/bash
#by author dhy
#test function
func1()
{
echo "this is the first function!"
}
echo "--------func begin--------"
func1
echo "--------func end----------"
- 函数名:表明是一个函数
- 括号内没有参数,但是可以进行传参
- 调用方式:直接函数名调用,不能够加()
- 返回值使用return 进行返回,并且在主调函数中$?进行接收
运行结果如下:
带有返回值的函数
func()
{
echo "Please enter two number"
read num1 num2
return $(($num1+$num2))
}
func
echo "the two number sum is $?"
- 返回值在主调函数中使用$?来进行接受
- 进行加法计算时,需要注意语法
- 运行结果如下
传递参数
func()
{
return $(($1+$2))
}
echo "Please enter two number"
read num1 num2
func num1 num2
echo "sum is $?"
- 传递参数:在被调函数中使用类似的命令行参数形式来接受
- 返回值依旧是$?来接受