由一个实例浅析sed用法
admin
2023-03-19 17:21:43
0

首先,假设我们有一个文件,叫123.txt,#cat一下看到里面的内容是这样的:

[root@func-lms-001 ~]# cat 123.txt 
james
curry
  durant
wade
yaoming
     messi
[root@func-lms-001 ~]#


如果我们想在james前面加上lebron,那么采用的sed语句就是:#sed -i '/^james/s/^/lebron /' 123.txt,如果要在curry后面加上 champion,那么采用的语句就是:#sed -i '/^curry/s/$/ champion!/' 123.txt


使用完上面两句话之后,再#cat一下,看下效果:

[root@func-lms-001 ~]# cat 123.txt 
lebron james
curry champion!
  durant
wade
yaoming
     messi
[root@func-lms-001 ~]#


现在我们要把 durant前面加上FMVP这几个字母,按照上面的语句找葫芦画瓢的话,应该是:#sed -i '/^durant/s/^/FMVP /' 123.txt但是很抱歉,这个语句是错误的!因为^是匹配开头durant的意思,而我们再看一下durant那一行的开头是空格。


那么就要用liunx的正则来匹配空格,于是这句话就变成了:#sed -i '/^\s\+durant/s/^/FMVP/' 123.txt ,^\s\+这个就是正则里匹配空格的意思 。


#cat一下:

[root@func-lms-001 ~]# cat 123.txt 
lebron james
curry champion!
FMVP   durant
wade
yaoming
     messi
[root@func-lms-001 ~]#


那么现在要在messi后面加上"GOAL !!!",就很简单了。语句是:#sed -i '/^\s\+messi/s/$/ GOAL !!!/' 123.txt


以上我们把有/无空格情况下的首尾添加字符都练习了一遍,下面我们要看看如果要在中间添加怎么办?


比如说,有一天苦逼的运维接到开发PL的邮件,说”由于安全基线要求,现在需要监听内网端口“,具体的需求就是把所有含tomcat的模块里的server.xml的文件里添加上内网IP。


原有的server.xml的节选如下:

    
           

           
                   
           
           
                   
                                   
                   

现在要把 这一句里面加上内网IP,改成这样:


               

               
                       
               address="1.2.3.4"
protocol="AJP/1.3" redirectPort="8443" />
               
                       
                                       
                       

请问怎么做?

答案1:

sed -i '/

答案2:

sed -i 's@Connector port="8099"@& address="1.2.3.4"@' server.xml



相关内容

热门资讯

不用抢!2025年河南省冰雪运... 【大河财立方消息】12月27日,第十二届全国大众冰雪季暨第十届河南省大众冰雪季即将正式启动。与此同时...
贾鲁河源头复涌记 ①②③④图①②③④ 12月22日,贾鲁河源头附近,复涌机井所在的机井房被拆除,涌水点完全展露出来,周...
【第一财经】“超稳炸/金/花到... 有 亲,根据资深记者爆料超稳炸/金/花是可以开挂的,确实有挂(咨询软件无...
2025中国汽车供应链:重构与... 2025年,全球汽车产业正处在电动化与智能化深度融合的关键转型期,而供应链作为产业发展的基石,正经历...
终于懂了“福建十三水有没有挂?... 家人们!今天小编来为大家解答福建十三水透视挂怎么安装这个问题咨询软件客服徽9784099的挂在哪里买...
玩家最新攻略“新版荣耀炸/金/... 玩家最新攻略“新版荣耀炸/金/花开挂神器?”(果然有透视挂)您好,新版荣耀炸/金/花这个游戏其实有挂...
【第一资讯】“西南九九到底有挂... 【第一资讯】“西南九九到底有挂吗?”(透视曝光猫腻)您好,西南九九这个游戏其实有挂的,确实是有挂的,...
【今日要闻】“十三十三水经典比... 网上科普关于“十三十三水经典比鸡有没有挂”话题很是火热,小编也是针对十三十三水经典比鸡作*弊开挂的方...
【第一消息】“唐人江苏麻将怎么... 网上科普关于“唐人江苏麻将有没有挂”话题很是火热,小编也是针对唐人江苏麻将作*弊开挂的方法以及开挂对...
【今日要闻】“毛豆大厅拼三张可... 有 亲,根据资深记者爆料毛豆大厅拼三张是可以开挂的,确实有挂(咨询软件无...