4

32、sed命令详解

 2 years ago
source link: https://blog.51cto.com/gavenlee/5608564
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

32、sed命令详解

精选 原创

sed(Stream editor)流编辑器,也叫行编辑器。sed是从管道或文件中读取一行,处理一行,然后输出一行,再处理一行,在输出一行,直到全部处理完成;每当处理一行时,会把当前处理行存储在临时缓冲区中,称为模式空间(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容打印到屏幕;特点:打开速度快,执行速度快。

sed命令格式

sed [option] ... 'script;script;...' inputfile...

sed常用选项

-n 不输出至屏幕,默认是输出至屏幕的

32、sed命令详解_sed命令

-e 多点编辑,可以同时执行多个匹配更改

-f /path/script_file 从指定文件中读取编辑脚本

-r,-E  使用扩展正则表达式

-i.bak  备份文件并进行编辑保存

32、sed命令详解_sed_02

script选项及格式

由地址格式+命令实现

1、不停供,则全文读取

2、#:指定的行,$为尾行  /pattern/被pattern匹配的行

3、地址范围:#,# 从#行到第几行,如1,4表示1到4行;#,+#,从#行到#+#行;

   /pattern1/,/pattern2/ 从匹配pattern1到匹配pattern2行,一直往下匹配,不会中断

32、sed命令详解_sed命令_03

4、步进:~   1~2 则显示 1 3 5 7.....

32、sed命令详解_sed命令_04

p  打印当前模式空间内容,追加到默认输出后,一般结合-n 选项使用

32、sed命令详解_sed命令_05

I 忽略大小写输出

32、sed命令详解_sed_06

d 删除模式空间匹配的行

a [\\]text 在指定行后面追加文本,支持使用\n加多行

32、sed命令详解_sed命令_07

i [\\]text 在指定行前面追加文本,支持使用\n加多行

32、sed命令详解_sed_08

c [\\]text 替换行为text

32、sed命令详解_地址格式_09

w /path/file 保存模式匹配的行到指定文件

32、sed命令详解_sed命令_10

32、sed命令详解_地址格式_11

r /path/file 读取指定文件的文本内容至模式空间中匹配的行后面

32、sed命令详解_地址格式_12

=  为模式空间中的行打印行号

32、sed命令详解_sed_13

!模式空间中匹配的行取反处理

32、sed命令详解_地址格式_14

s/pattern/string/修饰符   查找替换,支持使用其他分隔符,如s@@@,S###等

g行内全局替换

p显示替换成功的行

w /path/file 将替换成功的行保存至文件中

I,i 忽略大小写

32、sed命令详解_sed命令_15
  • 收藏
  • 评论
  • 分享
  • 举报

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK