grep和sed替換文件中的字符串


sed -i s/"str1"/"str2"/g `grep "str1" -rl --include="*.[ch]" ./`

將當前目錄下的所有.c、.h文件中的str1字符串替換為str2字符串。

參數解釋:
sed:
-i 表示操作的是文件,``括起來的grep命令,表示將grep命令的的結果作為操作文件
s/"str1"/"str2"/表示查找str1並替換為str2,后面跟g表示一行中有多個str1的時候,都替換,而不是僅替換第一個

grep:
-r表示查找當前目錄以及所有子目錄
-l表示僅列出符合條件的文件名,傳給sed命令做替換操作
--include="*.[ch]" 表示僅查找.c、.h文件

注:如果不需要查找子目錄,僅需要在當前目錄替換,可直接用sed命令:

sed -i s/"str1"/"str2"/g ./*.[ch]

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM