应用多个查找并使用Perl代码replace多个.txt文件中的正则expression式查询

我试图find一个Perl的Windows代码,使我能够应用多个查找和replace正则expression式查询在一个特定的目录中的多个文件。 我能够应用多个查找和replace正则expression式查询使用许多文本编辑器(例如UltraEdit)。

Solutions Collecting From Web of "应用多个查找并使用Perl代码replace多个.txt文件中的正则expression式查询"

你的问题不是很具描述性。 这是做你想要的吗?

编辑在Windows上工作

perl -i.bak -pe"BEGIN {@ARGV = map glob, @ARGV} s/a/b/g; s/c/d/g; s/e/f/g; " My/Files/Directory/*.txt 

更新

除非你只做了一些改变,如果你把替换命令放在一个文件中,这样做可能是最好的

changes.pl

 BEGIN { @ARGV = map glob("\"$_\""), @ARGV; } s/a/b/g; s/c/d/g; s/e/f/g; 

然后你可以像这样在命令行上的一组文件上运行它

 perl -i.bak -p changes.pl My/Files/Directory/*.txt 

这是一个基本的perl程序(可能命名为myreplacers.pl ),可以这样做:

 #!/usr/bin/perl use strict; use warnings; while(<>) { s/regex1/replace1/; s/regex2/replace2/; print; } 

改变适当的正则表达式和替换文本,并运行它像perl myreplacers.pl file1 file2