在开始之前,我想告诉你我不是 Perl 专家。由于分配给我的一些特定任务,我才刚刚开始。
此任务的要求是提取文件的扩展名 ( .dat
) 并将其替换为.trg
. 问题是我们正在压缩.dat
要制作的文件$filename.dat.gz
,当我们提取扩展名并替换它时,我们得到了$filename.dat.trg
理想的结果$filename.trg
。
至于代码(请注意,这似乎是一个非常古老的“遗留”代码,我不想过多地修改它,因为它曾经/正在由另一个人维护),这就是它被放下的方式
#prepare the trigger file
#get the extension
my @contains_extension = split (/\./ , $filename);
my $ext = $contains_extension[-1];
#replace with a ".trg" extension
my $remote_trgfile = $filename;
$remote_trgfile =~ s/$ext$/trg/;
my $trgfile = $out;
$trgfile =~ s/$ext$/trg/;
记住$filename
在上面的代码中是带.dat.gz
ie后缀的,文件名是$filename.dat.gz
如果有人可以帮助我用一种更简单的方法来提取扩展名(.dat
和.gz
)并将其替换为,我将不胜感激.trg