通过密码寻找unrar档案的方法! 我正在使用这个没有通过的那些:
use strict;
use warnings;
use Archive::Rar;
$archive = "test.rar";
$unrar = Archive::Rar->new(archive => "$archive");
$unrar->Extract ();
此密码为“pass123”。 提前谢谢!
答案 0 :(得分:2)
Archive::Rar
是一个很薄的,但复杂的包装器围绕着真正的二进制文件,提供了非常狭窄的过程控制,同时有大量无意义的数据在其中移动。请考虑通过Perl的许多IPC工具手动调用rar
二进制文件,或者如果您使用的是Windows平台,请使用Archive::Unrar
。
无论如何,因为这个模块有非常草率的数据控制,并且如果你只需要快速而脏的脚本来进行一次性任务,你可以通过注入标志来欺骗它以在命令行中放置任何你想要的东西在文件列表中:
my $unrar = Archive::Rar->new(archive => $archive);
$unrar->{args}{-files} = ['.', '-ppass123'];
$unrar->Extract;