sed和grep, 查找全部文件并替换

时间:2022-10-09 16:16:11

sed -i "s/str1/str2/g" `grep  str1 -rl /home/test`


在test目录下,在所有文件中找str1  并将其替换为str2


注意, 如果替换内容中有  /  ,  要进行转译  \/


 元字符集


锚定行的开始 如:/^sed/匹配所有以sed开头的行。

锚定行的结束 如:/sed$/匹配所有以sed结尾的行。

匹配一个非换行符的字符 如:/s.d/匹配s后接一个任意字符,然后是d。

匹配零或多个字符 如:,love这成**love**。
\< 
锚定单词的开始,如:/\
\> 
锚定单词的结束,如/love\>/匹配包含以love结尾的单词的行。
x\{m\} 
重复字符x,m次,如:/0\{5\}/匹配包含5个o的行。
x\{m,\} 
重复字符x,至少m次,如:/o\{5,\}/匹配至少有5个o的行。
x\{m,n\} 
重复字符x,至少m次,不多于n次,如:/o\{5,10\}/匹配5--10个o的行。


sed其他应用 见 man sed