(3)、shell运算符与正则表达式
使用declare声明变量类型:
# declare [+/-][选项] 变量名
- :给变量设定类型属性
+:取消变量的类型数据
-a:将变量声明为数组型
-i:将变量声明为只读变量
-r:将变量声明为只读变量,一旦设置,既不能更改变量,也不能删除变量,甚至不能通过+r来取消只读,好在只是临时生效
-x:将变量声明为环境变量
-p:显示指定变量被声明的类型
运算时使用 $((运算式)) 或 $[运算式] 方式运算,推荐使用 $((运算式))
常用运算符:
| 运算符 | 说明 | 举例 a=10 b=20 |
|---|---|---|
| + | 加法 | `expr $a + $b` 结果为 30。 |
| - | 减法 | `expr $a - $b` 结果为 -10。 |
| * | 乘法 | `expr $a \* $b` 结果为 200。 |
| / | 除法 | `expr $b / $a` 结果为 2。 |
| % | 取余 | `expr $b % $a` 结果为 0。 |
| = | 赋值 | a=$b 将把变量 b 的值赋给 a。 |
| == | 相等。用于比较两个数字,相同则返回 true。 | [ $a == $b ] 返回 false。 |
| != | 不相等。用于比较两个数字,不相同则返回 true。 |
[ $a != $b ] 返回 true。 |
正则表达式:
| 元字符 | 作用 |
| * | 前一个字符匹配0次或多次 |
| . | 匹配除了换行符外任意一个字符 |
| ^ | 匹配行首(以···开头) |
| $ | 匹配行尾(以···结尾) |
| [ ] | 匹配括号中任意一个字符 |
| [^] | 匹配括号外任意一个字符,取反 |
| \ | 转义符 |
| \{n\} | 表示前面的字符恰好出现n次; eg:[0-9]\{4\} #匹配4个数字 |
| \{n,\} | 表示其前面字符出现次数不小于n次 |
| \{n,m\} | 匹配前面的字符至少出现n次,至多出现m次 eg:[0-9]\{\9,10\} #至少出现9次数字,至多出现10次数字 可以用来初略筛选一些数据 |
注意:正则模糊查询是包含关系;

浙公网安备 33010602011771号