atool - A script for managing file archives of various types
atool is a script for managing file archives of various types (tar, tar+gzip, zip, etc). The main command is probably 'aunpack' which extracts files from an archive. It overcomes the dreaded "multiple files in archive root" problem by first extracting to a unique subdirectory, and then moving back the files if possible. aunpack also prevents local files from being overwritten by mistake. Other commands provided are apack (for creating archives), als (for listing files in archives), and acat (for extracting files to stdout).
[aleksej@localhost test]$ atool -x test.tar.gz test.zip test.tar.gz: extracted to `test.zip' [aleksej@localhost test]$ atool -x test.zip Archive: test.zip inflating: Unpack-7233/test.doc test.zip: extracted to `test.doc'
Commands: -l, --list list files in archive (als) -x, --extract extract files from archive (aunpack) -X, --extract-to=PATH extract archive to specified directory -a, --add create archive (apack) -c, --cat extract file to standard out (acat) -d, --diff generate a diff between two archives (adiff) -r, --repack repack archives to a different format (arepack) --help display this help and exit --version output version information and exit Options: -e, --each execute command above for each file specified -F, --format=EXT override archive format (see below) -D, --subdir always create subdirectory when extracting -f, --force allow overwriting of local files -q, --quiet decrease verbosity level by one -v, --verbose increase verbosity level by one -V, --verbosity=LEVEL specify verbosity (0, 1 or 2) -p, --page send output through pager -0, --null filenames from standard in are null-byte separated -E, --explain explain what is being done by atool -S, --simulate simulation mode - no filesystem changes are made -o, --option=KEY=VALUE override a configuration option --config=FILE load configuration defaults from file