Beefy Boxes and Bandwidth Generously Provided by pair Networks
Welcome to the Monastery
 
PerlMonks  

Re^2: How to zip directory on windows

by Scrat (Monk)
on Mar 22, 2006 at 11:16 UTC ( [id://538464]=note: print w/replies, xml ) Need Help??


in reply to Re: How to zip directory on windows
in thread How to zip directory on windows

Here's a useful example of how to zip a Windows directory and all subdirectories and gif files, while keeping the original directory structure:
#!/usr/bin/perl use strict; use warnings; use Archive::Zip qw/ :ERROR_CODES :CONSTANTS/; my $maindir = 'C:\StuffToZip'; my $zipfile = 'backup.zip'; my $zip = Archive::Zip->new(); opendir(MAINDIR, $maindir) or die "Can't open $maindir: $!"; my @folders = readdir(MAINDIR); foreach (@folders) { next if $_ =~ /^\./; if (-d "$maindir\\$_") { &zip("$_", "$maindir\\$_"); } else { print "Error reading $maindir\\$_\n"; } } $zip->writeToFileNamed($zipfile) == AZ_OK or die "Can't write >$zipfil +e<: $!\n"; closedir MAINDIR; sub zip { my $type = shift; my $dir = shift; #Adds all subdirectories under $maindir and any gif files found $zip->addTreeMatching( "$dir", "$type", '\.gif$' ); }
Hope it helps. Cheers

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://538464]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others pondering the Monastery: (2)
As of 2024-04-20 03:06 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found