一生一世LINUX COMMAND ATLAS

LINUX COMMAND ATLAS · 命令详解

Linux sed 命令

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

GNU sed

语法

命令格式
sed [OPTION]... SCRIPT [FILE]...

常用参数

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

用法示例

3 个示例

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

sed -n "/WARN/p" app.log

只输出第 1 到第 20 行。

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

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

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

使用提示

不使用 -i 时,sed 将处理结果输出到标准输出并保留源文件。请先在样例数据上测试脚本。