zip-files
Command line utilities for creating zip files.
Provides the zip-files and zip-folder command line utilities. These are intended as an easy platform-independent tool to create zip files with an arbitrary file name and an arbitrary root (the top-level folder after extracting a zip) from files and folders at arbitrary locations on the file system.
Typical usage includes:
Deploy zip archives of Sphinx-documentation while releasing Python packages:
zip-folder --auto-root --outfile docs/_build/artifacts/mypackage-v1.0.0.zip docs/_build/htmlcreates a file mypackage-v1.0.0.zip in docs/_build/artifacts that unzips as a folder mypackage-v1.0.0 containing the files originally in docs/_build/html/.
Create zip files pulled together from different locations, for emailing:
zip-files -a -o report.zip ./report2020-01.tex /scratch/project/plots/*.pdfcreates a file report.zip that unzips as a folder report containing the file report2020-01.tex and all the pdf files originally in /scratch/project/plots/.
zip-files -f report2020-01 -o report.zip ./report2020-01.tex /scratch/project/plots/*.pdfdoes the same, but unzips as a folder report2020-01 instead of report.
Development of zip-files happens on Github.
Installation
To install the latest released version of zip-files, run this command in your terminal:
pip install zip_files
This is the preferred method to install zip-files, as it will always install the most recent stable release. It will result in the executable commands zip-files and zip-folder being added to your environment’s bin folder.
Usage
zip-files
Usage: zip-files [OPTIONS] [FILES]...
Create a zip file containing FILES.
Options:
-h, --help Show this message and exit.
--version Show the version and exit.
--debug Activate debug logging.
-f, --root-folder ROOT_FOLDER Folder name to prepend to FILES inside the
zip file.
-c, --compression [stored|deflated|bzip2|lzma]
Zip compression method. The following
methods are available: "stored": no
compression; "deflated": the standard zip
compression method; "bzip2": BZIP2
compression method (part of the zip standard
since 2001); "lzma": LZMA compression method
(part of the zip standard since 2006).
[default: deflated]
-a, --auto-root If given in combination with --outfile, use
the stem of the OUTFILE (without path and
extension) as the value for ROOT_FOLDER
-x, --exclude GLOB_PATTERN Glob-pattern to exclude. This is matched
from the right against all paths in the zip
file, see Python pathlib's Path.match
method. This option can be given multiple
times.
-X, --exclude-from FILE File from which to read a list of glob-
patterns to exclude, cf. --exclude. Each
line in FILE is one pattern. This option can
be given multiple times.
--exclude-dotfiles / --include-dotfiles
Whether or not to include dotfiles in the
zip files. By default, dotfiles are
included.
--exclude-vcs / --include-vcs Whether or not to include files and
directories commonly used by version control
systems. (Git, CVS, RCS, SCCS, SVN, Arch,
Bazaar, Mercurial, and Darcs), e.g.
'.git/', '.gitignore' '.gitmodules'
'.gitattributes' for Git. By default, VCS
are included.
--exclude-git-ignores / --include-git-ignores
Whether or not to look for .gitignore files
and to process them for exclude patterns.
Note that the .gitignore file itself is
still included in the zip archive unless
--exclude-vcs is given. By default,
.gitignore files are not processed.
-o, --outfile OUTFILE The path of the zip file to be written. By
default, the file is written to stdout.
zip-folder
Usage: zip-folder [OPTIONS] FOLDER
Create a zip file containing the FOLDER.
Options:
-h, --help Show this message and exit.
--version Show the version and exit.
--debug Activate debug logging.
-f, --root-folder ROOT_FOLDER Folder name to use as the top level folder
inside the zip file (replacing FOLDER).
-c, --compression [stored|deflated|bzip2|lzma]
Zip compression method. The following
methods are available: "stored": no
compression; "deflated": the standard zip
compression method; "bzip2": BZIP2
compression method (part of the zip standard
since 2001); "lzma": LZMA compression method
(part of the zip standard since 2006).
[default: deflated]
-a, --auto-root If given in combination with --outfile, use
the stem of the OUTFILE (without path and
extension) as the value for ROOT_FOLDER
-x, --exclude GLOB_PATTERN Glob-pattern to exclude. This is matched
from the right against all paths in the zip
file, see Python pathlib's Path.match
method. This option can be given multiple
times.
-X, --exclude-from FILE File from which to read a list of glob-
patterns to exclude, cf. --exclude. Each
line in FILE is one pattern. This option can
be given multiple times.
--exclude-dotfiles / --include-dotfiles
Whether or not to include dotfiles in the
zip files. By default, dotfiles are
included.
--exclude-vcs / --include-vcs Whether or not to include files and
directories commonly used by version control
systems. (Git, CVS, RCS, SCCS, SVN, Arch,
Bazaar, Mercurial, and Darcs), e.g.
'.git/', '.gitignore' '.gitmodules'
'.gitattributes' for Git. By default, VCS
are included.
--exclude-git-ignores / --include-git-ignores
Whether or not to look for .gitignore files
and to process them for exclude patterns.
Note that the .gitignore file itself is
still included in the zip archive unless
--exclude-vcs is given. By default,
.gitignore files are not processed.
-o, --outfile OUTFILE The path of the zip file to be written. By
default, the file is written to stdout.
History
0.4.1 (2021-04-21)
Bugfix: Permissions (especially executable permissions) were not preserved on Unix
0.4.0 (2021-04-04)
Added: options --exclude-vcs, --exclude-git-ignores, and --exclude-vcs
0.3.0 (2020-01-19)
Added: option --exclude
0.2.0 (2020-01-17)
Added: option --auto-root
0.1.0 (2020-01-17)
Initial release
Metadata
Release files for zip-files 0.4.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| zip_files-0.4.1.tar.gz | 43.5 kB | Without provenance | Details for zip_files-0.4.1.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| zip_files-0.4.1-py3-none-any.whl | Python 3 | none | any | Details for zip_files-0.4.1-py3-none-any.whl |
Total release size: 56.4 kB
Release files / zip_files-0.4.1.tar.gz
| Download URL | zip_files-0.4.1.tar.gz |
|---|---|
| Size | 43.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
fc797a78b92d44f9c5e740896771f12d41d240f47f8b185321d4a3766847dc97
|
|
BLAKE2b-256 checksum How to use checksums |
5732f1c1ff96aa74a664a99abf18202a36cab61d981d14d72760e5fe8344cd81
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.4.1 importlib_metadata/3.10.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.8.1
|
Release files / zip_files-0.4.1-py3-none-any.whl
| Download URL | zip_files-0.4.1-py3-none-any.whl |
|---|---|
| Size | 12.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d94dd40c5abd01666668c62931a23f2c800601170e7b3d5ba5d309bd70f5bcab
|
|
BLAKE2b-256 checksum How to use checksums |
d1cdac639dba1ce48dc465e44dcd98a68d1c53743da7687345f2b494d1ac5ae7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.4.1 importlib_metadata/3.10.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.8.1
|
Security for zip-files 0.4.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.