shell脚本之函数

1. 函数的作用

将命令序列按格式写在一起可方便重复使用命令序列避免代码重复。

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

在编写脚本时,有些脚本可以反复使用,可以调用函数来解决。

2. 函数的定义

1.

function 函数名 { 

​>命令序列

>}

2.

函数名(){

命令序列

}

3. 函数的返回值

return表示退出函数并返回一个退出值,脚本中可以用$?变量显示该值 (如果使用函数那么$?使用就会受限,我们可以使用return定义$?的返回值,来判断函数中命令是否成功)

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

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

4. 查看与删除函数

查看函数:

declare -f

删除函数:

unset 函数名

5. 传递参数

6. 函数变量的作用范围

(加local关键字可以让变量只在函数中生效,不影响外界环境)

7. 函数的递归

函数调用自己本身的函数

例 阶乘

8. 数组

8.1 数组的定义

数组中可以存放多个值。Bash Shell 只支持一维数组(不支持多维数组),初始化时不需要定义数组大小(与 PHP 类似)。

与大部分编程语言类似,数组元素的下标由 0 开始。

Shell 数组用括号来表示,元素用"空格"符号分割开。

8.2 数组的语法格式

定义数组格式:

  1. 数组名=(value0 value1 value2 value3 ......)

  2. 数组名=([0]=value [1]=value1 [2]=value2 ....)

  3. 列表名="value0 value1 value2 value3 ...... "

    数组名=($列表名)

  4. 数组名[0]="value1"

    数组名[1]="value2"

    数组名[2]="value3"

8.3 数组的数据类型

  • 数值类型
  • 字符类型
  • 使用 “ ”(双引号) 或者 ‘ ’ (单引号)定义

8.4 获取数组的长度

8.5 数组的遍历

查找10个数中的最大值与最小值

8.6 删除数组

unset 数组名      将整个数组删除
unset a[0]        只删除数组第一个值

8.7 数组切片

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值