[小贴士]sed替换:sed -i.bak -r ‘s/(.+_PW)=[0-9a-z]+/\1=redhat/g’ aa.txt

 

使用packstack生成应答文件的时候,里面涉及到许多的密码:

[小贴士]sed替换:sed -i.bak -r 's/(.+_PW)=[0-9a-z]+/<img decoding= 

现在想把这些密码统一改成redhat的话,可使用:

sed -i.bak -r 's/(.+_PW)=[0-9a-z]+/\1=redhat/g' aa.txt

结果变成了:

[小贴士]sed替换:sed -i.bak -r 's/(.+_PW)=[0-9a-z]+/<img decoding= 

 

讲解:

sed的基本用法:

sed 's/old/new/g' file

 

[小贴士]sed替换:sed -i.bak -r 's/(.+_PW)=[0-9a-z]+/<img decoding=

a.修改原文件的时候,同时备份一份出来,备份文件后缀为.bak

b.-r的意思是使用扩展正则

c.4和5部分是匹配 “=”号前面含有_PW且等号后面是小写字母及数字组合 的那些行,比如

[小贴士]sed替换:sed -i.bak -r 's/(.+_PW)=[0-9a-z]+/<img decoding= 

同时排除了:

[小贴士]sed替换:sed -i.bak -r 's/(.+_PW)=[0-9a-z]+/<img decoding= 

这样的行。

d.替换成7部分的值,\1表示old部分中第一个()括起来的部分,也就是4的位置。

 

相关新闻

发表回复

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据

                                                                                                                                    RHCE9学习指南连载,点击阅读