Perl 如何在几个不同的文件中更新同一行?
我有十几个Perl文件,其中有一行:Perl 如何在几个不同的文件中更新同一行?,perl,Perl,我有十几个Perl文件,其中有一行: my $version = "<span class=\"foottext\"><em>version 0.11</em></span>"; my$version=“0.11版”; 这是每个perl文件的第7行。我需要批量修改的元素是“X.XX”——版本号 我可以从shell(Perl)运行什么最优雅的脚本来打开每个文件,在第7行更改版本号,然后编写文件 快速浏览会发现,以下一行应该会有所帮助: perl
my $version = "<span class=\"foottext\"><em>version 0.11</em></span>";
my$version=“0.11版”;
这是每个perl文件的第7行。我需要批量修改的元素是“X.XX”——版本号
我可以从shell(Perl)运行什么最优雅的脚本来打开每个文件,在第7行更改版本号,然后编写文件 快速浏览会发现,以下一行应该会有所帮助:
perl -pi -w -e 's/version 0\.11/version 0.12/g;' *.pl
更一般地说,您应该避免代码重复,并将该行移到一个(单个)库文件中,该文件由十几个其他文件调用。Perl不会在这里击败
sed
:sed-ri'7s/(version)[0-9]\.[0-9]{2}/\1您的新版本/'文件
。如果你想使用更复杂的版本改变算法,那么我会使用<代码> AWK< /COD>。谢谢,我刚开始学习——我现在开始阅读调用库文件。你也可以考虑不要将演示与代码混合。将所有HTML移到某种模板系统中。