![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /proc/thread-self/root/proc/self/root/usr/share/doc/perl-Archive-Zip/examples/ |
# Shows how to update a Zip in place using a temp file. # $Revision: 1.1 $ # use Archive::Zip qw(:ERROR_CODES); use File::Copy(); my $zipName = shift || die 'must provide a zip name'; my @fileNames = @ARGV; die 'must provide file names' unless scalar(@fileNames); # Read the zip my $zip = Archive::Zip->new(); die "can't read $zipName\n" unless $zip->read($zipName) == AZ_OK; # Update the zip foreach my $file (@fileNames) { $zip->removeMember($file); if (-r $file) { if (-f $file) { $zip->addFile($file) or die "Can't add $file to zip!\n"; } elsif (-d $file) { $zip->addDirectory($file) or die "Can't add $file to zip!\n"; } else { warn "Don't know how to add $file\n"; } } else { warn "Can't read $file\n"; } } # Now the zip is updated. Write it back via a temp file. exit($zip->overwrite());