搜索并替换linux中所有文件中的代码块

Mal*_*ala 4 linux search replace

从理论上讲,这个问题与在这里一次又一次出现的问题相似:

但是它们(除了最后一个例外)都处理简单的替换。我有一个很大的代码块,它出现在许多文件中(我希望复制/粘贴源代码应受到法律的惩罚),因此我需要替换它。

有什么可以帮助我的吗?我想避免将块“ sed”化(就像上面的第三个类似问题一样),因为这将花费一天的大部分时间。如果我必须临时安装一些特定的文本编辑器,那就这样吧。

lar*_*sks 5

关于您的问题的好处是,您正在处理固定字符串而不是正则表达式...这使问题相对简单。您可以编写一些可以为您完成工作的东西,而不会出现太多问题。

我链接到的解决方案不是最佳解决方案,但它确实有效,并且它不仅仅依赖于开头/结尾行的匹配(也就是说,它仅替换逐字匹配)。基本思想是:

  • 读入定义我们正在寻找的文件,
  • 阅读定义我们替代品的文件,
  • 遍历所有其他参数,查找搜索字符串并将其替换为替换文本