Linux 三剑客之SED

概述

sed 是stream editor(流编辑器)缩写,是操作、过滤、转换文本的强大工具,常用功能增删改查、过滤、取行;
一次处理一行内容. 把每一行送到'模式空间'再输出;

语法

sed [options][sed-commands][-f<script文件>][文本文件]

参数


[options]:
-n 仅显示处理后的结果
-i 可以直接修改文件内容
-e 以选项中指定的脚本来处理文本
-f 或--file=<script文件> 以选项中指定的script文件来处理输入的文本文件。

[sed-commands]:
a 新增
d 删除
c 取代, c 的后面可以接字串,这些字串可以取代 n1,n2 之间的行
p 打印,亦即将某个选择的数据印出。通常 p 会与参数 sed -n 一起运行~
s 取代,s 的动作可以搭配正规表示法!例如 1,20s/old/new/g
i 插入(目前的上一行)

实例

  • 当前行后面新增: > nl passwd |sed '2a drink coffe'
  • 当前行前面新增: > nl passwd |sed '2i drink coffe'
  • 新增2行字符 :以反斜杠『 \ 』来进行新行的添加
  • 删除行
  • 替换行
  • 只显示部分行
  • 搜索有root关键字的行,使用-n时只显示匹配的行
  • 搜索后执行命令
posted @ 2021-06-01 15:57  Lianstyle  阅读(69)  评论(0编辑  收藏  举报