实例:把一个oldboy目录及其子目录所有的扩展名.sh结尾的文件中包含oldboy的字符全部替换为beautiful

xiaoxiao2021-02-28  20

sed命令替换

例:命令 sed -i s#123#345#g a.txt     注:将a.txt文件中的内容123换成345,#是分隔符可以用/@替换

sed的搭配字符 命令功能s查找并替换g与s联合用,对当前全局匹配替换-e允许多项编辑-i修改文件内容 方法一:

1,先创建一个文件oldboy,在oldboy文件中创建一些内容为oldboy的.sh文件,然后查看目录,操作为:

2,查看oldboy下的文件:find /oldboy -type f,会显示oldboy文件下所有的文件,输入find /oldboy -type f -name "*.sh",查看oldboy文件下所有的.sh文件

3,查看oldboy文件下所有的.sh文件的内容,输入:find /oldboy -type f -name "*.sh"|xargs cat

(xargs cat相当于cat /oldboy/t.sh /oldboy/test.sh /oldboy/a.sh,xargs意思是cat一串文件,是一个数据流)

4,查找替换oldboy为beautiful命令为: find /oldboy -type f -name "*.sh"|xargs sed 's#oldboy#beautiful#g' 

(这只是查看的时候替换并没有修改文件内容)

5,修改替换内容为beautiful命令为: find /oldboy -type f -name "*.sh"|xargs sed -i  's#oldboy#beautiful#g' ,回车完成操作

方法二:(1-4同)

5,修改替换内容为beautiful命令为:sed -i  's#oldboy#beautiful#g'  `find /oldboy -type f -name "*.sh"`

(先执行find查找.sh文件然后执行sed修改内容为beautiful)

6,查看操作结果:find /oldboy -type f -name "*.sh"|xargs cat

转载请注明原文地址: https://www.6miu.com/read-1750153.html

最新回复(0)