[//000000001]: # (zipfile::mkzip \- Zip archive creation) [//000000002]: # (Generated from file 'mkzip\.man' by tcllib/doctools with format 'markdown') [//000000003]: # (Copyright © 2009 Pat Thoyts) [//000000004]: # (zipfile::mkzip\(n\) 1\.2\.1 tcllib "Zip archive creation")
[ Main Table Of Contents | Table Of Contents | Keyword Index | Categories | Modules | Applications ]
# NAME zipfile::mkzip \- Build a zip archive # Table Of Contents - [Table Of Contents](#toc) - [Synopsis](#synopsis) - [Description](#section1) - [API](#section2) - [Bugs, Ideas, Feedback](#section3) - [Keywords](#keywords) - [Category](#category) - [Copyright](#copyright) # SYNOPSIS package require Tcl 8\.6 package require zipfile::mkzip ?1\.2\.1? [__::zipfile::mkzip::mkzip__ *zipfile* ?__\-zipkit__? ?__\-runtime__ *prefix*? ?__\-comment__ *string*? ?__\-directory__ *rootpath*? ?__\-exclude__ *exclude*? ?__\-\-__? ?*path*\.\.\.?](#1) # DESCRIPTION This package utilizes the zlib functions in Tcl 8\.6 to build zip archives\. # API - __::zipfile::mkzip::mkzip__ *zipfile* ?__\-zipkit__? ?__\-runtime__ *prefix*? ?__\-comment__ *string*? ?__\-directory__ *rootpath*? ?__\-exclude__ *exclude*? ?__\-\-__? ?*path*\.\.\.? From [http://wiki\.tcl\.tk/15158](http://wiki\.tcl\.tk/15158) This command constructs a zip archive from a directory tree using nothing but Tcl 8\.6 core features\. The resulting zip file should be compatible with other __[zip](\.\./\.\./\.\./\.\./index\.md\#zip)__ programs \- with the possible exception of unicode support\. The files generated by this command use utf\-8 encoding for all filenames and comments and it has been noticed particularly on Windows the __info\-zip__ and the Windows built\-in zip view have rather poor support for this part of the ZIP file specification\. The __7\-Zip__ program does correctly display utf8 filenames however and the __vfs::zip__ package will use these of course\. If you use > __::mkzip::mkzip__ mystuff\.tm \-zipkit \-directory mystuff\.vfs it will pack your "mystuff\.vfs/" virtual filesystem tree into a zip archive with a suitable header such that on unix you may mark it executable and it should run with tclkit\. Or you can run it with __tclsh__ or __wish__ 8\.6 if you like\. To change the executable header, specify the __\-runtime__ "preface" where preface is a file containing code you want prefixed\. For instance, on Windows you can create a self\-extracting zip archive using mkzip mystuff.exe -directory mystuff.vfs -runtime unzipsfx.exe The "unzipsfx\.exe" is the Info\-Zip self\-extracting stub\. Accepted options: * __\-runtime__ path This option specifies a file to use as prefix to the actual zip archive\. If specified __\-zipkit__ will be ignored\. * __\-zipkit__ Instructs the command to generate a prefix which makes the archive a zip\-based starkit\. Ignored if __\-runtime__ is present\. * __\-comment__ string This options specifies a global comment to place into the generated archive\. * __\-directory__ path This option specifies the directory to place into the generated archive\. If specified any argument *path*s are *ignored*\. * __\-exclude__ list This option specifies a list of glob patterns\. All paths matching at least one of the patterns are not placed into the generated archive\. This option defaults to CVS/* */CVS/* *~ ".#*" "*/.#*" * __\-\-__ This option signals the end of the options, forcing processing of all further words as arguments, even if they begin with a dash character\. Accepted arguments: * path *path* Each path is a directory or file to place into the generated archive\. Note however that these will be ignored when option __\-directory__ is specified\. # Bugs, Ideas, Feedback This document, and the package it describes, will undoubtedly contain bugs and other problems\. Please report such in the category *zipfile* of the [Tcllib Trackers](http://core\.tcl\.tk/tcllib/reportlist)\. Please also report any ideas for enhancements you may have for either package and/or documentation\. When proposing code changes, please provide *unified diffs*, i\.e the output of __diff \-u__\. Note further that *attachments* are strongly preferred over inlined patches\. Attachments can be made by going to the __Edit__ form of the ticket immediately after its creation, and then using the left\-most button in the secondary navigation bar\. # KEYWORDS [decompression](\.\./\.\./\.\./\.\./index\.md\#decompression), [zip](\.\./\.\./\.\./\.\./index\.md\#zip) # CATEGORY File # COPYRIGHT Copyright © 2009 Pat Thoyts