Как извлечь несколько файлов * .tgz в несколько каталогов, используя PERL? - PullRequest
0 голосов
/ 11 июля 2019

Я изучаю PERL Lang. Я вынудил (и немного запутался) проблему с извлечением файлов * .tgz. Моя цель, которой я хочу достичь, - извлечь несколько файлов * .tgz в несколько папок.

Итак, структура приходит:

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

Я хочу извлечь эти файлы в каталоги:

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

Может ли кто-нибудь помочь мне с этим или дать несколько советов, как этого добиться?

1 Ответ

1 голос
/ 11 июля 2019

С 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;
}
...