tar is a widely used command-line based utility for combining a bunch of files and/or directories into one archive file, commonly known as a tarball for backup or distributions purposes. The tar command is used to create, maintain, modify, or extract tar archives.
Read Also: 5 Best Command Line Archive Tools for Linux
Note that tar does not compress archive files by default, but, it can compress the resulting archive using (or filter it through) well-known data compression programs such as gzip, bzip2, or xz if you supply the -z
, -j
, or -J
flags.
Installing tar in CentOS, RHEL, and Fedora
The tar package comes pre-installed in most if not all Linux distributions by default. But if it is not installed on your system, run the following command to install it.
# yum install tar
Once you have tar installed on your system, you can use it as follows. This example shows how to create an uncompressed archive file of a directory called test_app
within the working directory.
# tar -cvf test_app.tar test_app/

In the above command, the tar flags used are -c
which creates a new .tar
archive file, -v
enables verbose mode to show the .tar
file creation progress, and -f
which specifies the file name type of the archive file (test_app.tar
in this case).
To compress the resulting archive file using gzip or bzip2, supply the -z
or -j
flag as follows. Note that a compressed tarball can also end with the .tgz
extension.
# tar -cvzf test_app.tar.gz test_app/ OR # tar -cvzf test_app.tgz test_app/ OR # tar -cvjf test_app.tar.bz2 test_app/

To list the contents of a tarball (archived file), use the -t
flag as follows.
# tar -ztf test_app.tar.gz OR # tar -ztvf test_app.tar.gz #shows more details

To extract (or untar) an archive file, use the -x
switch as shown.
# tar -xvf test_app.tar OR # tar -xvf test_app.tar.gz
For more usage examples, see our following articles: