函数、数组与 grep + 正则表达式的 Linux Shell 编程进阶指南 - 详解
根据你提供的内容,我整理了一份关于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[@]}"; do echo $ceshi done # 方式2 for ((i=0; i<${#array_name[@]}; i++)); do echo ${array_name[i]} done

3.正则表达式与grep
grep常用选项:
-E:启用扩展正则-c:统计匹配行数-i:忽略大小写-o:只输出匹配内容-v:反向匹配(不包含的行)-n:显示行号
常用元字符:
^:行首$:行尾.:任意单字符[]:匹配字符集中的任意一个字符[^]:反向匹配(不包含字符集中的任意一个字符)*:匹配前面的子表达式零次或多次{n}:精确匹配n次{n,}:至少匹配n次{n,m}:匹配n到m次














浙公网安备 33010602011771号