我有一个主文件,我想从中创建几个子文件。主文件中有几行我希望更改然后保存到另一个文件的文本。我希望多次执行此操作,每次将新文件保存为不同的文件名。
例如,我的主文件有一些 REPLACETEXT,我希望将其更改为 NEWTEXT 并将整个文件保存到 NEWTEXT1.txt。然后我想对 NEWTEXT2 重复此操作并保存到 NEWTEXT2.txt。再次冲洗并再重复 100 次左右。
我认为 perl 和循环有一种快速的方法,但它已经打败了我有限的知识。
像其他人建议的那样,强烈建议您进行一些基本的 Perl 培训。
然而,这个简单的代码应该可以工作
#!/usr/bin/perl -w
my @keywords=('NEWTEXT1','NEWTEXT2','NEWTEXT2');
open(FILE,"Master.txt");
foreach (@keywords)
{
open(NEWFILE,">$_.txt");
seek (FILE, 0, 0);
foreach $line (<FILE>)
{
$line=~s/REPLACETEXT/$_/g;
printf NEWFILE ("$line");
}
close(NEWFILE);
}
close(FILE);