如何替换存在于多个文件中的文本?

Linux提供了许多工具来简化系统管理员的工作。其中一个是replace命令,它简单地搜索文本文件来替换字符串并创建一个新的文本文件。Replace命令随MySQL服务器包提供。如果没有安装MySQL,我们就不能使用replace命令。

null

Replace命令

我们可以使用replace命令来更改文本文件中的字符串。

$ replace BEFORE AFTER < YOURCOMMAND > NEWTEXTFILE
  • 之前 是我们搜索的字符串
  • 之后 是 新建字符串
  • 是我们的原始文本文件
  • >新建文本文件 是新创建的带有替换字符串的文本文件

文件开头和结尾

我们可以用 ^ $

$ replace ^Before After < yourcommand > newtextfile
  • 替换字符串 之前 在这行的开头

Sed命令

替换命令的替代方法是sed。Sed通常默认安装在大多数发行版中。所以我们可以用replace替换sed。

$ sed 's/Before/After/g' < yourcommand.txt > newtextfile

或者

$ sed 's/Before//After/g'  yourcommand.txt

在本例中,替换就地完成,这样就不会创建新文件。

老朋友

我们可以用Perl完成替换,如下所示。在下面的示例中,我们将更改文本 Before After 文本。

perl -p -i -e 's/Before/After/g'  yourcommand.txt

相关文章: 如何在Bash中提示输入

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享