Мне нужно создать Zip-архив после фильтрации списка файлов, которые я хочу включить. Желательно, чтобы модуль работал как в Windows, так и в Linux.
Поскольку мне нужно отфильтровать список файлов, я действительно не хочу использовать внешнюю программу. Я бы предпочел не вводить внешние зависимости, поэтому я могу скомпилировать скрипт в один исполняемый файл в Windows (используя ActiveState PDK).
Что я уже пробовал
До сих пор я использовал Archive :: Zip найден на CPAN, но имеет серьезную ошибку на компьютере Windows, использующем имена файлов, отличных от ASCII: имена файлов в архиве повреждаются, так как они не переводятся в юникод.
Для этого есть отчет об ошибке, но в нем нет Он был обновлен более чем за 10 месяцев, и в документации модуля разработчик довольно бесполезен (типа «почините свой компьютер или избавьтесь от Windows»).
Обновление:
Благодаря разъяснениям Брайана и Алана Хаггая Алави, кажется, что Archive::Zip
уделяется достаточно внимания, чтобы исправить эти ошибки в ближайшее время и, наконец, получить полностью работающий zip-модуль в Windows.