始める前に、私は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
つまり、ファイル名は$filename.dat.gz
.dat
誰かが拡張機能(と.gz
)の両方を抽出してそれを置き換えるより簡単な方法で私を助けてくれたら幸いです.trg