什么是 sed?
sed(Stream Editor)是 Unix/Linux 系统中一个非交互式的文本处理工具,主要用于对输入流(文件或管道)进行基本的文本转换。
sed 的核心作用
- 查找并替换文本(类似“全局替换”)
- 删除指定行或匹配模式的行
- 插入或追加文本
- 提取特定行(如打印第 5 行)
- 配合 shell 脚本实现自动化文本处理
基本语法
sed [选项] '命令' 文件
常用示例
1. 替换所有 "apple" 为 "orange":
sed 's/apple/orange/g' file.txt
2. 删除空行:
sed '/^$/d' file.txt
3. 打印第 3 到第 5 行:
sed -n '3,5p' file.txt
为什么使用 sed?
sed 无需打开文件即可高效处理大文本,特别适合在 shell 脚本中批量修改配置文件、日志分析等场景,是运维和开发人员的必备工具。