How do I Compress a Whole Linux or UNIX Directory?

July 6, 2021 . 2 MIN READ

How can I compress a whole directory under Linux / UNIX using a shell prompt?

  1. It is very easy to compress a Whole Linux/UNIX directory. It is useful to backup files, email all files, or even to send software you have created to friends. Technically, it is called as a compressed archive. GNU tar command is best for this work. It can be use on remote Linux or UNIX server. It does two things for you:
    => Create the archive
    => Compress the archive

You need to use tar command as follows (syntax of tar command):
tar -zcvf archive-name.tar.gz directory-name
Where,

  • -z: Compress archive using gzip program
  • -c: Create archive
  • -v: Verbose i.e display progress while creating archive
  • -f: Archive File name

For example, you have directory called /home/jerry/prog and you would like to compress this directory then you can type tar command as follows:
$ tar -zcvf prog-1-jan-2005.tar.gz /home/jerry/prog

Above command will create an archive file called prog-1-jan-2005.tar.gz in current directory. If you wish to restore your archive then you need to use following command (it will extract all files in current directory):
$ tar -zxvf prog-1-jan-2005.tar.gz

Where,

  • -x: Extract files

If you wish to extract files in particular directory, for example in /tmp then you need to use following command:
$ tar -zxvf prog-1-jan-2005.tar.gz -C /tmp
$ cd /tmp
$ ls –

 

Exclude directory:

tar -cvf cpm_web_files.tar.gz /var/www/cpm.cybernetikzdigital.com/web

–exclude “pm_files”

TAR: tar -cvf httpdocs_06_20_2006.tar.gz /home/user/domain.com/site–exclude “/home/user/domain.com/site/excluded-dir1” –exclude “/home/user/domain.com/site/excluded-dir2” GNU TAR: tar -cvf httpdocs_06_20_2006.tar.gz –exclude “/home/user/domain.com/site/excluded-dir1” –exclude “/home/user/domain.com/site/excluded-dir2″/home/user/domain.com/site

 

Leave a Reply

Your email address will not be published. Required fields are marked *