Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

How do i archive and remove excess files example.

cd ~/Desktop && tar -cvf sitepack.tar ./

this will give me


when what i am looking for is


so it archive everything into the zip rather than leave them in place?

share|improve this question
up vote 7 down vote accepted

If you're using GNU tar, you can use the --remove-files option:


remove files after adding them to the archive

That's not portable though.

If your tar doesn't have that, you'll need to do it manually, in two steps.
I'd suggest you don't put the tar file in the directory you're packing up, but put it in the parent directory. That way you can simply rm * (possibly recursively) after tar is done.

share|improve this answer
thanks for this --remove-files worked for me – user1503606 Oct 18 '12 at 11:00
There's always tar cvf <out-file> <in-files> | xargs rm -f as well to remove files immediately after adding them if your tar doesn't support the above GNU extension. – Mark K Cowan Oct 20 '13 at 12:46
[max@localhost zzz]$ touch 1 2 3 4
[max@localhost zzz]$ ll
total 0
-rw-rw-r-- 1 max max 0 Oct 18 16:13 1
-rw-rw-r-- 1 max max 0 Oct 18 16:13 2
-rw-rw-r-- 1 max max 0 Oct 18 16:13 3
-rw-rw-r-- 1 max max 0 Oct 18 16:13 4

To create a archive use this command

-c ---------> For Create a archeive

[max@localhost zzz]$ tar -cvf max.tar 1 2 3 4
[max@localhost zzz]$ ls -l max.tar 
-rw-rw-r-- 1 max max 10240 Oct 18 16:14 max.tar

To list a content of archive use this command

-t ---------> List all files in archive

[max@localhost zzz]$ tar -tvf max.tar
-rw-rw-r-- max/max           0 2012-10-18 16:13 1
-rw-rw-r-- max/max           0 2012-10-18 16:13 2
-rw-rw-r-- max/max           0 2012-10-18 16:13 3
-rw-rw-r-- max/max           0 2012-10-18 16:13 4

To extract use this command

-x ---------> To extract from archive

-v ---------> For verbose mode

[max@localhost zzz]$ tar -xvf max.tar -C direc1

Here -C extract the content to directory direc1

To extract a single file from archieve use this command

[max@localhost zzz]$ tar -xvf max.tar 1 -C direc1

Give the file name you want to archive in my case file name is `1`

[max@localhost zzz]$ tar -cvf max.tar 1 2 3 4 --remove-files

This will remove original files after achieving

share|improve this answer

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .