本文最后更新于:2022年8月5日 晚上
Linux 命令 sed
和 grep
命令结合可以对文件夹下的所有特定字符串进行快速替换,本文记录方法。
具体操作
批量查找某个目下文件的包含的内容
1 2
| cd etc grep -rn "查找的内容" ./
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| grep -rn "cdn.jsdelivr.net/gh/zywvvd/HexoImages" ./
-> $ grep -rn "cdn.jsdelivr.net/gh/zywvvd/HexoImages" ./ ./notes/coding/dataset/mongodb/MongoDB.md:120: ./notes/coding/doc/design_document/design_document.md:80: ./notes/coding/doc/design_document/design_document.md:82: ./notes/coding/doc/design_document/design_document.md:88: ./notes/coding/halcon/halcon-20-11-install/halcon-20-11-install.md:59: ./notes/coding/halcon/halcon-20-11-install/halcon-20-11-install.md:61: ./notes/coding/halcon/halcon-20-11-install/halcon-20-11-install.md:63: ./notes/coding/halcon/halcon-20-11-install/halcon-20-11-install.md:65: ./notes/coding/halcon/halcon-20-11-install/halcon-20-11-install.md:71: ./notes/coding/halcon/halcon-20-11-install/halcon-20-11-install.md:73: ./notes/coding/halcon/halcon-20-11-install/halcon-20-11-install.md:79: ./notes/coding/halcon/halcon-20-11-install/halcon-20-11-install.md:108: ./notes/coding/internet/ddns/ddns.md:23: ...
|
批量替换某个目下所有包含的文件的内容
1 2
| cd etc sed -i "s/查找的内容/替换后的内容/g" `grep -rl "查找的内容" ./`
|
1
| sed -i "s/cdn.jsdelivr.net\/gh\/zywvvd\/HexoImages/gitee.com\/zywvvd\/HexoImages\/raw\/main/g" `grep -rl "cdn.jsdelivr.net\/gh\/zywvvd\/HexoImages" ./`
|
批量查找并替换任意文件夹下的文件内容。
1
| sed -i "s/要找查找的文本/替换后的文本/g" `grep -rl "要找查找的文本" /任意文件夹`
|
参考资料
文章链接:
https://www.zywvvd.com/notes/system/linux/cont-from-dir/cont-from-dir/