sed详解
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sed详解相关的知识,希望对你有一定的参考价值。
[[email protected] ~]$ sed ‘$i this is a new line‘ test this is a this is a new line test
sed [-hnV][-e<script>][-f<script文件>][文本文件]
参数:
-e<script>或--expression=<script> 以选项中指定的script来处理输入的文本文件,可接多个,但要分别对每个连续动作指定-e,一般只有一个月也可省略。
-f<script文件>或--file=<script文件> 以选项中指定的script文件来处理输入的文本文件
-h或--help 显示帮助。
-n或--quiet或--silent 仅显示script处理后的结果。
-V或--version 显示版本信息。
动作:
a:新增, a 的后面可以string,这些string会在新的一行,即出现目前的下一行 c:取代, c 的后面可以string,这些字串可以取代 特定的某一行,也可替换n1,n2 之间的行
d:删除, d 因为是删除,所以 d 不接后续 i:插入, i 的后面可以string,而这些string会在新的一行出现,即目前的上一行
p:打印, 亦即将某个选择的数据印出。通常 p 会与参数 sed -n 一起运行
s:取代, 可以直接进行取代的工作,通常这个 s 的动作可以搭配正则表达式
PS:以上动作一般用作接收其他动作或命令送过来的数据流,做处理后显示出来。
实例: 原简单测试文件:
[[email protected] ~]$ cat test this is a test
a 新增:
在第一行后面新增一行
[[email protected] ~]$ sed ‘1a this a new line‘ test this this a new line is a test
在最后一行新增一行
[[email protected] ~]$ sed ‘$a this a new line‘ test this is a test this a new line
i 插入
在第一行前插入,即插入的行为第一
[[email protected] ~]$ sed ‘1i this a new line‘ test this a new line this is a test
在最后一行插入,及插入的行为倒数第二行
以上是关于sed详解的主要内容,如果未能解决你的问题,请参考以下文章