文本编辑命令——sed-创新互联
sed命令作为一种流编辑器,以行为单位对一个或多个文件进行编辑,在sed处理文本时,会将文本放到一个模式空间当中,如果当前行能够匹配sed命令所给出的PATTERN则用命令进行处理,如果不能匹配则默认情况下标准输出;文件内容默认情况下不会改变;
成都创新互联提供成都网站建设、成都做网站、网页设计,高端网站设计,广告投放平台等致力于企业网站建设与公司网站制作,10余年的网站开发和建站经验,助力企业信息化建设,成功案例突破近1000家,是您实现网站建设的好选择.sed命令:
sed [OPTION]...‘script’ [input-file]...
常用选项:
-n:安静模式,默认不匹配的行不输出到屏幕上;
-e script:多条件输出,一个e选项可以配合一个script;
-i:将修改的内容直接写进原文件;
-r:支持扩展的正则表达式;
script由两部分组成:Address与Command两者之间不能有空格存在;即AddressCommand;
Address:
1.当地值为空时则表示对当前所有文件进行操作;
2.单地址,指定行号num时,只对当前行进行操作,或者/PATTERN/指能够匹配该模式的第一行,对该行进行操作;
3.地址范围:
①addr1,addr2:从addr1开始到addr2结束的中间所有行,包括addr1和addr2;
②first~step:由标记first开始到step为止;
③add1,+N:由add1行开始,并计算向后N行;
④addr1,~N:从addr1开始,包括addr1所在行,向后计算addr1*N行;
例如:2,~5相当于2,2*5
⑤/PATTERN1/,/PATTERN2/
从被pattern1匹配的第一行开始计算,一直到被pattern2匹配的第一行结束;
Command:
=:先是被模式匹配行的行号;
a \test:在所匹配行的下一行添加test文本,支持使用\n选项;
i \test:在所匹配行的上一行添加test文本,支持使用\n选项;
c \test:将所匹配行用test进行替换,支持使用\n选项;
d:将在模式空间中匹配的行删除,不在显示输出,d选项通常不搭配-n选项;
p:将在模式空间匹配的行输出,p选项通常搭配-n选项;
w filepath:被能够匹配的行另存到一个文件里去;
r filepath:将filepath中的内容追加到模式空间中被模式匹配的行之后;
!COMMAND:在模式空间中匹配的行不输出,不匹配的行输出;
s///:查找替换,“/”可以随意分配三个一模一样的符号,视情况而定;
s/pattern/text/[control]
pattern:计划查找并替换内容;
text:要替换的结果
control:如何进行替换;
g:行内全部替换;
p:显示替换成功的行;
如
s@/etc/fstab@/etc/mtab@:将字符/etc/fstab替换为/etc/mtab;
sed命令示范:
加-n与不加-n:采用指定单地址的方式
-e:
-r:取出当前路径的基名,用基民替换当前路径
-i:将修改写入文件;
采用多地址方式:add1,add2
add1,+N
/PATTERN/,/PATTERN/匹配:
p:将在模式空间匹配的行输出;加-n与不加-n;
d:删除模式空间匹配的行;d选项的使用不加-n;
w file:将模式匹配的内容保存到另一个文件当中;
s///:查找替换,将文件中开头为#且后面有空格的匹配字符删去;
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
网页题目:文本编辑命令——sed-创新互联
分享地址:http://myzitong.com/article/idoes.html