my $dir = 'C:\Windows\Desktop\carl\zip\mysql'; my $file = 'C:\Windows\Desktop\carl\test.zip'; my $name = 'backup'; my $zip = Archive::Zip->new(); chdir $dir; $zip->addTree( ".", $name ) == AZ_OK or die("could not add tree"); $zip->writeToFileNamed( $file ) == AZ_OK or die("could not write file");