如何使用 PERL 将多个 *.tgz 文件提取到多个目录?

How to extract multiple *.tgz files to multiple directories using PERL?

我正在学习 PERL 语言。 我已经强制(并且有点困惑)提取 *.tgz 文件的问题。 我想达到的目的是将多个 *.tgz 文件提取到多个文件夹。

于是结构来了:

first.tgz
sec.tgz
third.tgz
...
n.tgz

我想将这些文件提取到目录中:

first (extracted first.tgz)
sec (extracted sec.tgz)
thidrd (extracted third.tgz)
etc.

有人可以帮我解决这个问题,或者给出一些实现方法的提示吗?

atool:

use autodie qw(:all);
use Path::Tiny qw(path);
for my $archive (qw(first.tgz sec.tgz third.tgz n.tgz)) {
    my $basename = path($archive)->basename('.tgz');
    path($basename)->mkpath;
    system qw(aunpack -X), $basename, $archive;
}