shell脚本和编程4 | 您所在的位置:网站首页 › shell脚本获取字符串长度 › shell脚本和编程4 |
一、shell数组
数组中可以存放多个值。Bash Shell 只支持一维数组(不支持多维数组),初始化时不需要定义数组大小(与 PHP 类似)。 与大部分编程语言类似,数组元素的下标由 0 开始。 Shell 数组用括号来表示,元素用"空格"符号分割开,语法格式如下: array_name=(value1 value2 ... valuen) 复制代码 读取数组读取数组元素值的一般格式是: ${array_name[index]} 复制代码 关联数组Bash 支持关联数组,可以使用任意的字符串、或者整数作为下标来访问数组元素。 关联数组使用declare命令来声明,语法格式如下: declare -A array_name 复制代码-A 选项就是用于声明一个关联数组。 关联数组的键是唯一的。 访问关联数组元素可以使用指定的键,格式如下: array_name["index"] 复制代码 获取数组中的所有元素使用 @ 或 * 可以获取数组中的所有元素,在数组前加一个感叹号 ! 可以获取数组的所有键。 获取数组的长度获取数组长度的方法与获取字符串长度的方法相同。 二、Shell 基本运算符Shell 和其他编程语言一样,支持多种运算符,包括: 算数运算符 关系运算符 布尔运算符 字符串运算符 文件测试运算符原生bash不支持简单的数学运算,但是可以通过其他命令来实现,例如 awk 和 expr,expr 最常用。 expr 是一款表达式计算工具,使用它能完成表达式的求值操作。 注意: 表达式和运算符之间要有空格,例如 2+2 是不对的,必须写成 2 + 2,这与我们熟悉的大多数编程语言不一样。 完整的表达式要被 包含,注意这个字符不是常用的单引号,在 Esc 键下边。 条件表达式要放在方括号之间,并且要有空格,例如: [a==a==a==b] 是错误的,必须写成 [ a==空格a ==空格 a==空格b ] 乘号(*)前边必须加反斜杠()才能实现乘法运算; if...then...fi 是条件语句,后续将会讲解。 在 MAC 中 shell 的 expr 语法是: $((表达式)) ,此处表达式中的 "*" 不需要转义符号 "" 。 |
CopyRight 2018-2019 实验室设备网 版权所有 |