sed 流式编辑器的基本操作

admin 2024年1月19日09:42:05评论10 views字数 676阅读2分15秒阅读模式

与我们常见的所见即所得的编辑器不同,sed 是指令型编辑器。你告诉 sed 需要如何操作,然后闭着眼睛即可完成操作。当我们所处的环境没法调用 vim 、图形化编辑器时,sed 可以使用批处理的方式编辑文件。

编辑器中常用的操作:插入、删除、替换,这些操作在 sed 中都很容易实现。我们下面以例子的形式展开。

操作1:在指定行插入文本

$ sed -i '2 a 示例1示例2示例3' file

以上例子在第2行之后插入了三行文本,插入前后对照如下:

sed 流式编辑器的基本操作

操作2:将指定行替换为新的内容

$ sed -i '2 {    i 示例1示例2示例3    d}' file

以上例子与上一个相同,只是多了一个删除操作。起到的作用是清空原来行的内容,插入新的内容。

sed 流式编辑器的基本操作

操作3:在行首插入#作为注释

$ sed -i 's/(.{,1})/#1/' test.sed

sed 流式编辑器的基本操作

操作4:删除行首#注释

$ sed -i 's/^(#{1})//' test.sed

sed 流式编辑器的基本操作

操作5:在行中指定位置,插入一段内容

$ sed -i '2 s/^(.{2})/1插入一段文本 /' file

sed 流式编辑器的基本操作

以上例子所做的操作为:在第2行,第2个字符处插入一段文本。

以上几个例子演示了使用 sed 对文件进行插入、删除、替换。其中行内的删除、插入实际上使用的实际是替换。

最后一个例子使用了正则表达式中的标签引用,即使用 1 代表之前正则表达式中匹配的内容。这样可以将老的内容在引用的基础上替换成新的内容,而不是被全新内容替换。

对于比较长的命令,可以将 sed 命令写入到 sed 脚本中,通过 -f 调用脚本。

全文完。

如果转发本文,文末务必注明:“转自微信公众号:生有可恋”。

原文始发于微信公众号(生有可恋):sed 流式编辑器的基本操作

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年1月19日09:42:05
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   sed 流式编辑器的基本操作http://cn-sec.com/archives/2409156.html

发表评论

匿名网友 填写信息