是否可以使用IO::Compress::ZIP创建ZIP存档,而不保留传入文件的完整路径?
例如,如果我将/tmp/foo/file.pdf添加到zip文件中,我希望在将/tmp/foo路径添加到归档文件时将其删除。这可能吗?有其他模块可以做到这一点吗?
请参阅IO::Compress::Zip 文档中的FilterName
选项
尽管此选项可以与OO指针面一起使用,但它是最重要的使用一次性界面。例如,下面的代码显示了FilterName可用于从一系列文件名,然后将其存储在$zipfile中。
sub compressTxtFiles { my $zipfile = shift ; my $dir = shift ; zip [ <$dir/*.txt> ] => $zipfile, FilterName => sub { s[^$dir/][] } ; }