sed(stream editor)是 Unix/Linux 系统中一个强大的流编辑器,常用于自动化文本处理任务。虽然它是一个命令行工具,但其名称和文档中大量使用英文术语。本专题将结合 sed 的核心功能,帮助你理解相关英语表达,并掌握实际应用。
sed 全称是 stream editor,意为“流编辑器”。它逐行读取输入流(文件或标准输入),对每一行执行指定的编辑操作(如替换、删除、插入等),然后输出结果。
s — substitute(替换):最常用命令,用于查找并替换文本。d — delete(删除):删除匹配的行。p — print(打印):打印匹配的行(需配合 -n 使用)。i — insert(插入):在指定行前插入文本。a — append(追加):在指定行后追加文本。将文件中的 "apple" 替换为 "orange":
sed 's/apple/orange/g' file.txt
删除所有空行:
sed '/^$/d' file.txt
仅打印包含 "error" 的行:
sed -n '/error/p' logfile.txt
官方文档、错误提示、技术论坛和开源项目大多使用英文。理解 substitute、pattern space、hold buffer 等术语,能让你更高效地查阅资料、调试脚本,并与全球开发者交流。
结合正则表达式(Regular Expressions)使用 sed,可实现复杂文本处理。推荐在 Linux 或 macOS 终端中实践,并参考 man sed 获取权威英文手册。