我想替换文件1中的一些字符,并想用Perl将替换字符的输出写入文件2中

我想替换文件1中的一些字符,并想用Perl将替换字符的输出写入文件2中,perl,Perl,我有文件actual.out.tmp,我想替换一些字符并将输出发送到 文件actual.out。我尝试了以下代码: open(ACTUAL, "$tmpDir/data/actual_out.tmp"); my $pattern=""; while(<ACTUAL>) { $pattern .= $_; } close(ACTUAL); $pattern=~s/@[^[]*/@/g; $rc= systemTestSetup::execute("touch $tmpDi

我有文件
actual.out.tmp
,我想替换一些字符并将输出发送到 文件
actual.out
。我尝试了以下代码:

open(ACTUAL, "$tmpDir/data/actual_out.tmp");
my $pattern="";
while(<ACTUAL>)
{   
 $pattern .= $_;
}   
close(ACTUAL);
$pattern=~s/@[^[]*/@/g;
$rc= systemTestSetup::execute("touch $tmpDir/data/actual_out");
open(ACTUAL1, ">$tmpDir/data/actual_out");
print ACTUAL1 ;

close(ACTUAL1);
sleep(10);
open(实际,“$tmpDir/data/ACTUAL_out.tmp”);
我的$pattern=“”;
while()
{   
$pattern.=$\uux;
}   
关闭(实际);
$pattern=~s/@[^[]*/@/g;
$rc=systemTestSetup::execute(“触摸$tmpDir/data/actual_out”);
打开(实际值1,“>$tmpDir/data/actual_out”);
打印实际值1;
关闭(1);
睡眠(10);

我认为行
print ACTUAL1;
应该是
print ACTUAL1$pattern
,因为这是您进行搜索和替换的地方(
$\uu
我认为仍然有原始文件的最后一行)


可能还有其他问题。

您尝试过什么?您知道这就像
perl-pe的/pattern/substitute/'file2
?打开(实际,“$tmpDir/data/ACTUAL_out.tmp”);我的$pattern=“”;while(){$pattern.=$\pattern=~s/[^[]*//g;打印实际;}关闭(实际);不可读。如果您需要添加到您的问题,请通过编辑添加到您的问题。它不是写入实际文件。请提供一些帮助