atool
A script for managing file archives of various types. tldr-pages
On several platforms
Several platforms
A script for managing file archives of various types. atool uses external archiver programs but provides a consistent command-line interface for listing, extracting, creating, and managing archives.
List files in an archive
atool --list path/to/archive.zipIdentifyExtract an archive (safely creates a subdirectory if needed)
atool --extract archive.tar.gzIdentifyExtract an archive to a specific directory
atool --extract-to path/to/output_directory archive.rarIdentifyDisplay a specific file's content from an archive to stdout (like cat)
atool --cat archive.tar path/to/file_in_archive.txtIdentifyCreate a new archive from specified files and/or directories
atool --add new_archive.zip path/to/file1 path/to/file2 ...IdentifyList files in an archive and send the output through a pager
atool --list --pager large_archive.tar.bz2IdentifyExtract multiple archives at once (each to its own subdirectory if needed)
atool --extract --each archive1.zip archive2.tar.gz *.rarIdentifyRepack an archive from one format to another (e.g., .tar.gz to .tar.7z)
atool --repack old_archive.tar.gz new_archive.tar.7zIdentify