如何使用 grep 进行搜索和替换

新手上路,请多包涵

我需要在目录内的所有文件和子目录中递归搜索指定的字符串,并将该字符串替换为另一个字符串。

我知道找到它的命令可能如下所示:

 grep 'string_to_find' -r ./*

但是我怎样才能用另一个字符串替换 string_to_find 的每个实例?

原文由 billtian 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 746
1 个回答

另一种选择是使用 find 然后通过 sed 传递它。

 find /path/to/files -type f -exec sed -i 's/oldstring/new string/g' {} \;

原文由 rezizter 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题