标签:出现 扩展正则 非交互 enter 行编辑 显示 常用 font 正则表达式
2019.10.14
vim /vi 是交互式文本编辑工具。而sed 是流编辑器,非交互式处理文本,一次只处理一行内容。 其中sed编辑指令的格式如下:
[address1][,address2] function [argument]
其中,地址参数address1、address2为行数或regular expression字串,表示所执行编辑的资料行;函数参数function[argument]为sed的内定函数,表示执行的编辑动作。
Sed编译器有如下常用函数:
●a或a\:添加(后面),添加内容会在新的一行出现
●c或c\:替换一行
●d:删除
●i或i\:插入,添加内容会在新的一行出现
●p:打印,通常与sed -n一起运行
●s:查找替换
Sed编译器参数说明:
●-i:在文件上修改,并会改变源文件。
●-e:多次使用sed;在文件上修改单不会使源文件改动,输出到终端。
●-r:扩展正则表达式。
●-n:表示只打印包含模板的行。
# sed -e ‘1d‘ f.txt:把文件f.txt第1行删除,但源文件并不会有改变。-e 表示后面可以跟表达式
# sed -e ‘1,3d‘ f.txt:把第1行到第3行都删除
# sed -e ‘2,$d‘ f.txt:从第2行到最后一行都删除
# sed -e ‘/^#/d‘ f.txt:把行首为#的所有行全部删除
# sed -e ‘/#/d‘ f.txt:删除所有包含#的行
# sed -e ‘/until/,/done/d‘ f.txt:把包含until的行到包含done的行都删除
# sed -e ‘1c\111111‘ f.txt:把第1行替换为111111
# sed -e ‘2i\#a‘ f.txt:在第2行的前面插入#a
# sed -e ‘1a\#a‘ f.txt:在第1行的后面添加#a
# sed -n -e ‘1p‘ f.txt:只显示第1行
# sed -e ‘s/am/AM/‘ f.txt:把每一行的第一个am替换为AM
# sed -e ‘s/am/AM/g‘ f.txt:把每一行所有的am都替换为AM
# sed -e ‘/am/c\AM‘ f.txt:把每一行包含am的行替换为AM,命令# sed -e ‘/am/cAM‘ f.txt 同样有这种效果。
标签:出现 扩展正则 非交互 enter 行编辑 显示 常用 font 正则表达式
原文地址:https://www.cnblogs.com/lrfang/p/11712214.html