文本处理

Linux sed 命令

转换文本流;此例仅打印匹配行,不会修改文件。

适用版本/范围: 常用 Linux 命令;Shell 内置命令与外部程序的行为可能因发行版而异。English

语法

sed [OPTION]... SCRIPT [FILE]...

用法示例

只输出第 1 到第 20 行。

sed -n '1,20p' app.log

在输出中将每行所有 old 替换为 new。

sed 's/old/new/g' names.txt

参数、选项与子句

参数 / 子句说明
-n, --quiet关闭自动输出;使用 p 打印选中的行。
-E, -r, --regexp-extended使用扩展正则表达式。
-e SCRIPT添加一段要执行的脚本。
-f FILE从 FILE 读取编辑命令。
-i[SUFFIX], --in-place直接修改文件;指定后缀时会保留备份。
-z, --null-data使用 NUL 字符分隔输入记录。
安全提示

执行前请核对命令和目标路径。修改文件、服务、账户、磁盘、权限或数据库的操作可能难以撤销;建议先在安全环境测试并保留备份。

参考文档 ↗返回目录