SOZIP(1)
β¨ SOZIP(1) β¨
okay bestie, pull up a chair, because sozip is literally that girl π
this is the GDAL manual page for sozip, and by the end you're gonna be making seek-optimized zip files like it's nothing. no cap. π¦
π Added in version 3.7. (fresh out the box, iconic behavior)
π SYNOPSIS π
sozip [--help] [--help-general]
[--quiet|--verbose]
[[-g|--grow] | [--overwrite]]
[-r|--recurse-paths]
[-j|--junk-paths]
[-l|--list]
[--optimize-from=<input.zip>]
[--validate]
[--enable-sozip={auto|yes|no}]
[--sozip-chunk-size=<value>]
[--sozip-min-file-size=<value>]
[--content-type=<value>]
<zip_filename> [<filename>]...
π DESCRIPTION π
so, what is sozip actually for? she does a LOT, and she does it well. the sozip utility can be used to:
- create a SOZip (Seek-Optimized ZIP) file π₯
- append files to an existing ZIP/SOZip file
- list the contents of a ZIP/SOZip file
- validate a SOZip file
- convert an existing Zip file in a SOZip optimized one
TIP: π‘ Equivalent in new "gdal" command line interface: See gdal vsi sozip.
and now, the options. every single one, bestie, because we don't skip. π€
--helpβ shows this help message and peaces out. βοΈ--help-generalβ gives you a brief usage message for the generic GDAL commandline options, then exits.--quietβ quiet mode, bestie. no progress message is emitted on the standard output. shhh. π€«--verboseβ verbose mode. she's telling you EVERYTHING.-g,--growβ grow an existing zip file with the content of the specified filename(s). This is the default mode of the utility. This switch is here for compatibility with the Info-ZIPziputility. (yes she keeps the old friends around, we love a legacy-supporting queen π)--overwriteβ overwrite the target zip file if it already exists. out with the old π-l,--listβ list the files contained in the zip file in an output similar to the Info-ZIPunziputility, but with the addition of a column indicating whether each file is seek-optimized. the receipts!! π§Ύ--validateβ validates a SOZip file. Baseline ZIP validation is done in a light way, limited to being able to browse through ZIP records with the InfoZIP-based ZIP reader used by GDAL. But validation of the SOZip-specific aspects is done more thoroughly. so like, casual glance for the basics, full FBI investigation for the SOZip parts. π-r,--recurse-pathsβ travels the directory structure of the specified directory/directories recursively. she goes deep. π³οΈ-j,--junk-pathsβ store just the name of a saved file (junk the path), and do not store directory names. By default,sozipwill store the full path (relative to the current directory). throw that path away, we don't need it β¨--optimize-from=<input.zip>β re-process{input.zip}to generate a SOZip-optimized.zip. Options--enable-sozip,--sozip-chunk-sizeand--sozip-min-file-sizemay be used in that mode.--enable-sozip={auto|yes|no}β Inautomode, a file is seek-optimized only if its size is above the value of--sozip-min-file-size. Inyesmode, all input files will be seek-optimized. Innomode, no input files will be seek-optimized. pick your fighter π₯--sozip-chunk-size=<value>β Chunk size for a seek-optimized file. Defaults to32768bytes. The value is specified in bytes, orKandMsuffix can be respectively used to specify a value in kilo-bytes or mega-bytes.--sozip-min-file-size=<value>β Minimum file size to decide if a file should be seek-optimized, in--enable-sozip=automode. Defaults to1 MBbyte. The value is specified in bytes, orK,MorGsuffix can be respectively used to specify a value in kilo-bytes, mega-bytes or giga-bytes.--content-type=<value>β Store the Content-Type for the file being added as a key-value pair in the extra field extension 'KV' (0x564b) dedicated to storing key-value pair metadata. metadata stans rise up π<zip_filename>β Filename of the zip file to create/append to/list.<filename>β Filename of the file to add.
π§΅ MULTITHREADING π§΅
The GDAL_NUM_THREADS configuration option can be set to ALL_CPUS or a integer value to specify the number of threads to use for SOZip-compressed files. Defaults to ALL_CPUS. she's bringing the whole group chat, not just one girl π
π RETURN STATUS CODE π
The program returns status code 0 in case of success, and non-zero in case of error (non-blocking errors emitted as warnings are considered as a successful execution). so 0 = slay, non-zero = we have a situation π
π¦ C API π¦
Functionality of this utility can be done from C with CPLAddFileInZip() or VSICopyFile().
β¨ EXAMPLES β¨
Create a, potentially seek-optimized, ZIP file with the content of my.gpkg:
sozip my.gpkg.zip my.gpkg
Create a, potentially seek-optimized, ZIP file from the content of a source directory:
sozip -r my.gpkg.zip source_dir/
Create a, potentially seek-optimized, ZIP file from an existing ZIP file.
sozip --convert-from=in.zip out.zip
List the contents of a ZIP file and display which files are seek-optimized:
sozip -l my.gpkg.zip
Validates a SOZip file:
sozip --validate my.gpkg.zip
π«Ά AUTHOR π«Ά
Even Rouault <even.rouault@spatialys.com>
π COPYRIGHT π
1998-2026
and that's the whole page, bestie!! π this was SOZIP(1) from the GDAL manual, dated Aug 18, 2026 β go forth and seek-optimize, you absolute icon. periodt. πβ¨πΈ
π¦ where this page comes from
- alpine 3.24: gdal-doc 3.13.3-r0 Β· MIT
- arch rolling: gdal 3.13.3-6 Β· MIT
- ubuntu stonking: gdal-bin 3.13.3+dfsg-1ubuntu4 Β· MIT
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms