什么是 sed?
sed(全称:stream editor,流编辑器)是 Linux 和 Unix 系统中用于对文本进行自动化处理的强大命令行工具。它可以在不打开文件的情况下,对输入流(文件或管道)中的文本进行查找、替换、删除、插入等操作。
sed 的基本语法
最常用的 sed 命令格式如下:
sed [选项] '命令' 文件名
例如,将文件 example.txt 中所有的 “apple” 替换为 “orange”:
sed 's/apple/orange/g' example.txt
常用选项与命令
-i:直接修改原文件(谨慎使用)-e:允许多个编辑命令-n:抑制默认输出,配合p命令打印匹配行s/pattern/replacement/:替换命令d:删除匹配行a\text:在匹配行后追加文本
实际应用示例
1. 替换文本
sed 's/旧文本/新文本/g' file.txt
2. 删除空行
sed '/^$/d' file.txt
3. 打印第5到第10行
sed -n '5,10p' file.txt
总结
sed 是系统管理员和开发者日常工作中不可或缺的文本处理利器。掌握 sed 能极大提升你在命令行环境下的工作效率,尤其是在批量处理日志、配置文件或自动化脚本时。