在 Linux Shell脚本编程 中,Shell数组 和 循环 是两个非常基础又强大的功能。将它们结合起来使用,可以高效地处理批量数据、自动化重复任务,是每个 Linux 用户和运维工程师都应掌握的技能。

Shell 数组是一种可以存储多个值的变量。它不像其他编程语言那样严格区分类型,但非常灵活实用。
定义一个数组的方法如下:
# 定义一个包含水果名称的数组fruits=("苹果" "香蕉" "橙子" "葡萄")注意:数组元素用空格分隔,不是逗号!
Shell 支持多种循环,最常用的是 for 循环。它非常适合遍历数组。
#!/bin/bash# 定义数组fruits=("苹果" "香蕉" "橙子" "葡萄")# 遍历数组并打印每个元素echo "水果清单:"for fruit in "${fruits[@]}"do echo "- $fruit"done输出结果:
水果清单:- 苹果- 香蕉- 橙子- 葡萄
这里 "${fruits[@]}" 表示取出数组中所有元素。这是安全且推荐的写法,尤其当元素包含空格时。
有时我们需要知道当前元素的位置(索引),这时可以用 C 风格的 for 循环:
#!/bin/bashfruits=("苹果" "香蕉" "橙子" "葡萄")len=${#fruits[@]} # 获取数组长度for ((i=0; i<len; i++)); do echo "$((i+1)). ${fruits[i]}"done输出:
1. 苹果2. 香蕉3. 橙子4. 葡萄
假设你有一批图片文件,想给它们加上统一前缀。我们可以结合数组和循环轻松实现:
#!/bin/bash# 假设当前目录有这些文件files=("photo1.jpg" "photo2.jpg" "photo3.jpg")prefix="vacation_"for file in "${files[@]}"; do if [ -f "$file" ]; then mv "$file" "${prefix}${file}" echo "已重命名: $file → ${prefix}${file}" else echo "警告: $file 不存在" fidone这个脚本展示了如何安全地操作文件,并结合条件判断提升健壮性。
${#array[@]} 获取数组长度。"${array[@]}",防止空格或特殊字符导致错误。set -e 以便出错时自动退出。通过本文,你已经掌握了 Linux Shell数组 与 循环 的基本用法及结合技巧。无论是日常运维还是自动化任务,这种组合都能极大提升效率。继续练习,你会发现 Shell脚本编程 其实并不难,反而充满乐趣!
关键词:Linux Shell数组, Shell循环, Shell脚本编程, 数组与循环结合
本文由主机测评网于2025-11-28发表在主机测评网_免费VPS_免费云服务器_免费独立服务器,如有疑问,请联系我们。
本文链接:https://vpshk.cn/2025111012.html