文章目录
- 1.函数相关
- 2.数组相关
- 3.正则表达式与grep
根据你提供的内容,我整理了一份关于Shell脚本中函数、数组和正则表达式的简明参考:
1.函数相关
-
函数调用:
- 直接使用函数名调用:
函数名
- 直接使用函数名调用:
-
参数传递:
- 函数内接收参数:
$n
(如$1
表示第一个参数,${10}
表示第十个参数) - 调用时传递参数:
函数名 参数1 参数2 ...
- 函数内接收参数:
-
返回值处理:
- 函数中使用
return 数据值
返回数据 - 返回值默认存储在
$?
中 - 可直接使用
$?
操作返回值
案例:
- 函数中使用
2.数组相关
-
数组定义:
# 直接定义 array_name=(value1 value2 value3 ...)# 单独定义元素 array_name[0]=value1 array_name[1]=value2
-
数组元素读取:
# 读取指定索引元素(索引从0开始) echo ${array_name[index]}# 读取所有元素 echo ${array_name[@]} # 或 ${array_name[*]}
-
数组遍历:
# 方式1 for ceshi in "${array_name[@]}"; doecho $ceshi done# 方式2 for ((i=0; i<${#array_name[@]}; i++)); doecho ${array_name[i]} done
3.正则表达式与grep
-
grep常用选项:
-E
:启用扩展正则-c
:统计匹配行数-i
:忽略大小写-o
:只输出匹配内容-v
:反向匹配(不包含的行)-n
:显示行号
-
常用元字符:
^
:行首$
:行尾.
:任意单字符[]
:匹配字符集中的任意一个字符[^]
:反向匹配(不包含字符集中的任意一个字符)*
:匹配前面的子表达式零次或多次{n}
:精确匹配n次{n,}
:至少匹配n次{n,m}
:匹配n到m次