0
点赞
收藏
分享

微信扫一扫

文本编辑命令sed

舍予兄 2022-04-21 阅读 71
linux

目录

1.sed命令介绍

2.sed命令的工作流程

3.sed命令常用选项及操作

4.sed命令格式

5.sed命令的实际使用

1.直接输出内容

2.不显示直接输出

 3.直接查看文件

 4.查看文件指定行

5.查看奇数行或偶数行 

 6.通过正则表达式匹配行内容

7.删除行 

 8.搜索替换

          9.插入

10.复制、粘贴、剪切 

1.sed命令介绍

Linux sed 命令是利用脚本来处理文本文件。

sed 可依照脚本的指令来处理、编辑文本文件。

Sed 主要用来自动编辑一个或多个文件、简化对文件的反复操作、编写转换程序等。

2.sed命令的工作流程

sed的工作流程只要包括:读取、执行和显示三个过程

读取:sed从输入流(文件、管道、标准输入)中读取一行内容并存储到临时的缓冲区域中(又称为模式空间 pattern space)

执行:默认情况下,所有的sed命令都在模式空间中顺序地执行,除非指定了行的地址,否则sed命令会依次对所有行进行执行。

显示:发送默认修改后的内容输出流。在发送数据后,模式空间会被清空。在所有的文件内容都准备处理完成之后,上述过程将重复进行,知道所有行完成命令。

注意:默认情况下所有的sed命令都是在模式空间内执行的,因此输入的文件本身并不会发生改变,除非使用重定向存储输出。

3.sed命令常用选项及操作

常用选项

  • -e或--experession=:表示用指定命令来处理输入的脚本文件,只有一个操作命令是可省略,一般在执行多个操作命令使用。
  • -f或--file=:表示用指定的脚本文件来处理输入的文本文件。
  • -h或--help:显示sed的命令帮助
  • -n或--quiet或slient:禁止sed编辑器输出,但可以和p命令一起完成输出

常用操作

  • s:替换,替换指定字符
  • d:删除,删除指定的行
  • a:增加,在当前行的下一行增加一行指定内容
  • i:插入,在指定行上面插入一行指定内容
  • s:替换,将选定行替换成指定内容
  • y:字符转换,转换前后的字符长度必须相同
  • p:打印,如果同时指定行,表示打印指定行;如果不指定行,则表示打印所有内容;如果有非打印字符,则以ASCII码输出。通常与-n一起使用
  • =:打印行数
  • l:打印数据流中的文本和不可打印的ASCII字符

4.sed命令格式

sed -e  '具体操作'  文件名1  文件名2 ...

sed -n  -e '具体操作'  文件名1  文件名2  ... 

sed -f  脚本文件  文件名1  文件名2  ...

sed -i  -e  '具体操作'  文件名1  文件名2  ...


5.sed命令的实际使用

1.直接输出内容

 sed命令的第三阶段是显示,所以会有两行相同的内容

2.不显示直接输出

 3.直接查看文件

 4.查看文件指定行

查看第一行

 查看一到三行

5.查看奇数行或偶数行 

n的作用是跳到当前行的下一行

查看奇数行

查看偶数行

6.通过正则表达式匹配行内容

匹配包含相关字符的行

匹配以指定字符为首的行

 匹配以指定字符结尾的行

 使用-r选项支持扩展正则表达式

7.删除行 

删除指定行

 删除范围内的行

取反删除  表示删除匹配项以外的行

 8.搜索替换

用法与vim编辑器类似

在每行行首加#号

删除行首的#号

 9.插入

在第一行下方插入

 行前插入

10.复制、粘贴、剪切 

  • H:复制到剪切板
  • d:删除
  • G:粘贴

使用复制和删除,再粘贴,实现剪切的作用

 复制粘贴

 

举报

相关推荐

0 条评论