3.1 循环与数组基础
3.1 循环与数组基础
一、循环概述
循环是 Shell 自动化脚本的核心,用于批量执行重复任务,例如:
- 批量 SSH
- 批量文件传输
- 批量软件安装
- 批量设备检测
- 批量日志处理
Shell 常见循环:
- for
- while
- until
二、for 循环
for 是 Shell 中最常用的循环结构,适用于遍历列表、数字、文件或参数。
基本语法
1 | |
示例
1 | |
三、数字循环
使用 seq
1 | |
输出:
1 | |
C 风格循环
更适合计数场景。
1 | |
这种写法在运维脚本和自动化工具中较常见。
四、while 循环
while 在条件成立时持续执行。
基本语法
1 | |
示例
1 | |
五、until 循环
until 与 while 相反,条件不成立时循环。
1 | |
实际生产环境中 while 使用频率更高。
六、Shell 算术运算
Shell 中不能直接进行:
1 | |
正确方式:
1 | |
或:
1 | |
示例
1 | |
七、break 与 continue
break
终止整个循环。
1 | |
continue
跳过当前循环。
1 | |
八、遍历脚本参数
Shell 支持通过 $@ 获取全部参数。
示例
1 | |
执行:
1 | |
输出:
1 | |
这种方式常用于批量文件处理和自动化部署。
九、数组
Bash 支持一维数组。
定义数组
1 | |
获取数组元素
1 | |
数组下标从 0 开始。
获取数组长度
1 | |
遍历数组
1 | |
十、循环读取文件
运维中经常需要逐行读取 IP、域名或配置文件。
示例
1 | |
文件内容:
1 | |
十一、批量自动化示例
批量检测 IP
1 | |
批量 SSH
1 | |
批量安装软件
1 | |
这种模式广泛用于 Linux 运维与设备管理。
十二、死循环
死循环会无限执行,通常用于监控或守护进程。
示例
1 | |
停止方式:
1 | |
建议在死循环中加入 sleep,避免 CPU 占用过高。
十三、总结
循环与数组是 Bash 自动化脚本的重要基础,核心内容包括:
- for、while、until 循环
- Shell 算术运算
- break 与 continue
- 参数遍历
- Bash 数组
- 文件批量处理
- 批量 SSH 与自动化部署
掌握循环后,即可编写真正具备批量处理能力的 Linux 运维脚本。
3.1 循环与数组基础
https://blog.sh462li.top/2026/06/03/Shell_learn/3.1 循环与数组基础/