atool is a script for managing file archives of various types (tar, tar+gzip, zip etc).
The main command is
aunpack which extracts files from an archive. Did you ever extract files from an archive, not checking whether the files were located in a subdirectory or in the top directory of the archive, resulting in files scattered all over the place?
aunpack overcomes this problem by first extracting to a new directory. If there was only a single file in the archive, that file is moved to the original directory.
aunpack also prevents local files from being overwritten by mistake.
The other commands provided are
apack (to create archives),
als (to list files in archives), and
acat (to extract files to standard out). As atool invokes external programs to handle the archives, not all commands may be supported for a certain type of archives.
atool identifies archives by their file extension. Sometimes this is not possible - for instance rar archives usually have varying numeric file extensions. In those cases when atool can't identify the format,
file is used instead. (atool can be configured not to use
atool is written in Perl by Oskar Liljeblad and is free software (GNU General Public License).
The complete history of atool can be seen here.
The latest version of atool is 0.39.0, which was released on 2012-04-02:
Precompiled binaries are available as well (sorry, only for the old version 0.37.0):
These files, as well as older versions, are available in the atool file area. You can also find RPM packages of atool for Fedora and Red Hat Enterprise Linux at ATrpms:
atool is mentioned on the following pages:
atool is Copyright (C) 2001, 2002, 2003, 2004, 2005, 2007, 2008, 2009, 2011 Oskar Liljeblad
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
The source code of this project may contain files from other projects, and files generated by other projects, including:
Such files are licensed under the terms of the GNU General Public License or a license compatible with the GNU GPL (as listed on http://www.gnu.org/licenses/license-list.html). See each file for copyright details.
The following programs are required to run atool:
Perl 5.004 or later
atool is written in Perl. The modules
POSIX must be available (they probably are by default).
Web site: http://www.perl.org/
The following programs are optional:
file is used to determine file types, and is found in most unices by default. This program is necessary unless you choose to disable the
Web site: ftp://ftp.astron.com/pub/file/
tar (GNU tar)
tar is required if you want to use atool with tar archives. Implementations other than GNU's will work with atool as well, but see the Installation section below if you don't use GNU tar 1.13.18 or later.
Web site: http://www.gnu.org/software/tar/tar.html
gzip (GNU zip)
gzip is required if you want to use atool with gzip compressed archives.
Web site: http://www.gzip.org/
bzip is required if you want to use atool with bzip compressed archives. Note that bzip is obsoleted by bzip2.
bzip2 is required if you want to use atool with bzip2 compressed archives.
Web site: http://www.bzip.org/
pbzip2 is required if you want to use atool with bzip2 compressed archives and utilize parallel processing.
Web site: http://compression.ca/pbzip2/
lzip is required if you want to use atool with lzip compressed archives.
Web site: http://lzip.nongnu.org/lzip.html
plzip is required if you want to use atool with lzip compressed archives and utilize parallel processing.
Web site: http://lzip.nongnu.org/plzip.html
lzop is required if you want to use atool with lzop compressed archives.
Web site: http://www.lzop.org/
LZMA is required if you want to use atool with lzma compressed archives.
Web site: http://www.7-zip.org/sdk.html
zip/unzip (Info-ZIP Zip/Unzip)
Zip is required if you want to use atool with zip archives. Implementations other than Info-ZIP's might work with atool as well.
Web site: http://www.info-zip.org
rar (Eugene Roshal's RAR and UnRAR)
RAR is required if you want to use atool with rar archives. Implementations other than Eugene Roshal's might work with atool as well.
Web site: http://www.rarsoft.com/
lha (LHa for UNIX)
LHa is required if you want to use atool with lha, lharc and similar archives.
unace (UnAce for Linux)
UnAce is required if you want to use atool with ace archives.
Web site: http://www.winace.com
Arj is required if you want to use atool with arj archives.
Web site: http://arj.sourceforge.net
Red Hat Package Manager
The Red Hat Package Manager is required if you want to use atool with rpm archives.
Web site: http://www.rpm.org/
cpio (GNU cpio)
cpio is required if you want to use atool with cpio archives. Other implmentations than GNU's might work as well.
Web site: http://www.gnu.org/software/cpio/
arc is required if you want to use atool with ARC archives (all commands supported).
nomarch is required if you want to use atool to list and extract files from ARC archives.
Web site: http://rus.members.beeb.net/nomarch.html
p7zip is required if you want to use atool with 7z archives.
Web site: http://p7zip.sourceforge.net/
unalz is required if you want to use atool with alzip archives.
Web site: http://www.kipple.pe.kr/win/unalz/
To build all files, simply run
The configure script accepts a few options - use the following command to show them:
Installing atool is a matter of copying the atool file to some appropriate directory for executable files, usually
/usr/local/bin. After that, symbolic links for
atool should be created in the same directory.
All this can be done automaticly by running
It is possible to create a system wide configuration file overriding default values found in the top of the
atool script (see below).
A list of options that atool accepts can be displayed by running atool with the
Please see the manual page for atool for full use and configuration information. This document can usually be viewed this way:
Web site and file area for atool is hosted on Savannah:
The latest version of atool should always be available on this site.
The author of atool and this document, Oskar Liljeblad, can be reached by e-mail:
Please send bug reports, suggestions, ideas or comments in general to me - I would like to hear from you if you like (or don't like) atool.