Sample code for 30+ languages & platforms
Ruby

Create Zip Excluding Files Matching Patterns

See more Zip Examples

How to create a .zip archive excluding (skipping) files that match a set of wildcarded patterns.

Chilkat Ruby Downloads

Ruby
require 'chilkat'

success = false

# This example requires the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.

zip = Chilkat::CkZip.new()

success = zip.NewZip("test.zip")
if (success != true)
    print zip.lastErrorText() + "\n";
    exit
end

# Create a string array object with our set of filename patterns
# to be excluded:
sa = Chilkat::CkStringArray.new()
success = sa.Append("*.bak")
success = sa.Append("*.tmp")

# Tell the zip object to use these exclusions:
zip.SetExclusions(sa)

# Append a directory tree.  The AppendFiles does
# not read the file contents or append them to the zip
# object in memory.  It simply appends references
# to the files so that when WriteZip (or WriteZipAndClose,
# or WriteExe, etc.) is called, the files are compressed
# and encrypted.
recurse = true
success = zip.AppendFiles("/temp/a/*",recurse)

success = zip.WriteZipAndClose()
if (success != true)
    print zip.lastErrorText() + "\n";
    exit
end

print "Zip Created!" + "\n";