Shell脚本:如何在文件夹中递归查找和替换句子(而不是单词)

问题描述 投票:-1回答:2

问:考虑一个示例file.txt:

World Hello world Hello Hell Hello Hello world

如何在“海洋宇宙”中查找并替换“Hello World”这句话

World Hai Universe Hello Hell Hello Hai Universe

我想在文件夹中的所有匹配文件中递归地进行此更改。

提前谢谢。

bash shell
2个回答
3
投票

尝试使用findsed

find . -type f -exec sed -i 's|Hello World|Hai Universe|g' {} \;

这将直接在当前递归地找到所有文件,然后分别对每个文件执行sed find + replace。


0
投票

您可以在Unix中使用sed命令尝试这样的操作。

sed -i 's/Hello World/Hai Universe/g' filename
© www.soinside.com 2019 - 2024. All rights reserved.