Perl Archive::Rar обрабатывать архивы с паролем?
Ищите способ разархивировать архивы с помощью пароля! Я использую это для тех без пропуска:
use strict;
use warnings;
use Archive::Rar;
$archive = "test.rar";
$unrar = Archive::Rar->new(archive => "$archive");
$unrar->Extract ();
Пароль для этого будет "pass123". Заранее спасибо!
1 ответ
Archive::Rar
это тонкая, но извилистая оболочка вокруг реального бинарного файла, обеспечивающая очень узкое управление процессом и имеющая внутри тонны бессмысленных данных. Пожалуйста, рассмотрите просто вызов вручную rar
бинарный через множество средств IPC Perl вместо или с использованием Archive::Unrar
если вы на платформе Windows.
В любом случае, поскольку этот модуль имеет довольно неаккуратное управление данными, и если вам нужен быстрый и грязный скрипт для одной задачи выстрела, вы можете обмануть его, чтобы поместить все, что вы хотите, в командную строку, вставив флаги в список файлов:
my $unrar = Archive::Rar->new(archive => $archive);
$unrar->{args}{-files} = ['.', '-ppass123'];
$unrar->Extract;