Skip to content

unzip | Cheatsheet

Extract files to standard output, no messages

unzip -p foo.zip

List files (short format)

unzip -l foo.zip

Freshen existing files, create none

unzip -f foo.zip

Test compressed archive data

unzip -t foo.zip

Update files, create if necessary

unzip -u foo.zip

Display archive comment only

unzip -z foo.zip

List verbosely/show version info

unzip -v foo.zip

Exclude files that follow (in xlist)

unzip foo.zip -x filename_to_exclude

Extract files into a specific directory

unzip foo.zip -d /path/to/directory

Never overwrite existing files

unzip -n foo.zip

Quiet mode

unzip -q foo.zip

Overwrite files WITHOUT prompting

unzip -o foo.zip

Junk paths (do not make directories)

unzip -j foo.zip

Match filenames case-insensitively

unzip -C foo.zip

Restore UID/GID info

unzip -X foo.zip

Keep setuid/setgid/tacky permissions

unzip -K foo.zip

Examples

Extract all files except 'joe' from zipfile 'data1.zip'

unzip data1 -x joe

Send contents of 'foo.zip' via pipe into program 'more'

unzip -p foo | more

Quietly replace existing 'ReadMe' if archive file newer

unzip -fo foo ReadMe

List files inside a zip archive

unzip -l foo.zip

Extract a specific file from a zip archive

unzip foo.zip filename_to_be_unzipped

Unzip a zip archive

unzip foo.zip

Unzip multiple zip files

for zip_file in ./*.zip; do 
    unzip -o "$zip_file"
done

Extract 25 zip archive files at once

find . -maxdepth 1 -name '*.zip' -print0 | xargs -0 -I {} -P 25 unzip "{}"

Set a password for a zip file

zip -P mypassword archive.zip file1.txt file2.jpg

Extract files from a password-protected zip file

unzip -P mypassword archive.zip