From: http://www.cppblog.com/CWindows/archive/2009/08/11/92872.html
You can use tar -- help in Linux to view detailed instructions.
Format: Tar [Option] File
-C Create create a new archive
-X extract Extract files from an archive
-T list the contents of an archive
C/X/t cannot exist at the same time.
-Z -- gzip, -- gunzip, -- ungzip filter the archive through Gzip
-J, -- Bzip2 filter the archive through Bzip2
-F, -- file = archive use archive file or device Archive
-V, -- verbose verbosely list files processed
-P: use the original attributes of the original file (the attributes will not be changed based on the user)
-P: absolute paths can be used for compression!
-N: a new date (yyyy/mm/DD) will be packed into the new file!
-- Exclude file: do not pack the file during compression!
Example:
Example 1: package all the files in the/etc directory into/tmp/etc.tar
[Root @ Linux ~] #
Tar-CVF/tmp/etc.tar/etc <= package only, do not compress!
[Root @ Linux ~] #Tar-zcvf/tmp/etc.tar.gz/etc<= Compressed with gzip After packaging
[Root @ Linux ~] #Tar-jcvf/tmp/etc.tar.bz2/etc<= Compressed with Bzip2 After packaging
# Note that the file name after parameter F is obtained by ourselves. We use. tar for identification.
# If the Z parameter is added, .tar.gz or. tgz is used to represent the tar file ~ compressed by gzip ~
# If you add the J parameter, use .tar.bz2 as the file name ~
# A warning message is displayed when the preceding command is executed:
# "Tar: removing leading '/" from Member names "is a special setting for absolute paths.
Example 2: Check the files in the above/tmp/etc.tar.gz file?
[Root @ Linux ~] #Tar-ztvf/tmp/etc.tar.gz
# When we use gzip to compress the files in the TAR file,
# Add the Z parameter! This is important!
Example 3: Decompress the/tmp/etc.tar.gz file under/usr/local/src.
[Root @ Linux ~] #CD/usr/local/src
[Root @ Linux SRC] #Tar-zxvf/tmp/etc.tar.gz
# By default, We Can uncompress files anywhere! In this example,
# First, I will transform the working directory to the/usr/local/src directory, and unlock/tmp/etc.tar.gz,
# The unlocked directory will be in/usr/local/src/etc! In addition, if you enter/usr/local/src/etc
# The file attributes in this directory may be different from those in/etc!
Example 4: Under/tmp, I only want to unbind the etc/passwd in/tmp/etc.tar.gz.
[Root @ Linux ~] #CD/tmp
[Root @ Linux TMP] #Tar-zxvf/tmp/etc.tar.gz etc/passwd
# I can use tar-ztvf to check the file name in the tarfile. If you only need one file,
# You can issue it in this way! Notice! The root directory in etc.tar.gz/is removed!
Example 5: Back up all the files in/etc/and save their permissions!
[Root @ Linux ~] #Tar-zxvpf/tmp/etc.tar.gz/etc
# This-P attribute is very important, especially when you want to keep the attributes of the original file!
Example 6: only new files in/home are backed up.
[Root @ Linux ~] #Tar-n "2005/06/01"-zcvf home.tar.gz/home
Example 7: I want to back up/home,/etc, but not/home/dmtsai
[Root @ Linux ~] #Tar -- exclude/home/dmtsai-zcvf myfile.tar.gz/home/*/etc
Example 8: package/etc/and unpack it under/tmp without generating a file!
[Root @ Linux ~] #CD/tmp
[Root @ Linux TMP] #Tar-CVF-/etc | tar-xvf-
# This action is a bit like CP-r/etc/tmp ~ It is still useful!
# Note that the output file is changed to-and the input file is changed to-, and there is another file | Yes ~
# This represents standard output, standard input, and pipeline commands respectively!
# This part will be explained again when we mention this command in bash shell!