GNU tar(Tape ARchive)保存多个文件整合到一个单一存档文件包,并可以从文件包中恢复文件。这里有一些Linux的tar命令与有用的应用实例 一些有用的命令行开关如下,这是本文中使用。
c => 创建一个存档文件.
v => 显示命令的详细输出(或过程).
x => 提取的存档文件.
f => 档案文件的文件名.
z => 通过使用gzip的存档.
t => 归档文件的查看内容.
j => 通过bzip2的使用档案.
C => 指定存档目的目录.
W => 验证归档文件.
示例1:创建的 .tar 存档文件。
以下命令将创建一个使用的 /var/log 中的所有文件和目录(含子目录)的压缩(tar)文件。
# tar cvf youcl-16-apr-2013.tar /var/log
示例2:创建名为 .tar.gz 一个存档文件。
以下命令将创建一个使用的/var/log 中的所有文件和目录(含子目录)压缩(tar.gz的)文件。我会创造出比.tar文件更多的压缩文件。
# tar czvf youcl-16-apr-2013.tar.gz /var/log
示例3:创建一个 .tar.bz2 格式存档文件。
本实施例中用于创建 bz2 文件。bz2文件比的.tar和.tar.gz格式的文件有更高的压缩率。它也需要花更多的时间,相对于其他类型的压缩 。
# tar cjvf youcl-16-apr-2013.tar.bz2 /var/log
检查的 .tar,.tar.gz 格式和 .tar.bz2 格式的文件大小差异。
# ls -l youcl-16-apr-2013.tar*
-rw-r--r--. 1 root root 26818560 Apr 12 22:25 youcl-16-apr-2013.tar
-rw-r--r--. 1 root root 697802 Apr 13 00:25 youcl-16-apr-2013.tar.bz2
-rw-r--r--. 1 root root 1091399 Apr 13 00:26 youcl-16-apr-2013.tar.gz
根据上面的输出 .tar.bz2 格式有更高的压缩率。
例4:压缩 .tar, .tar.gz 以及 .tar.bz2 格式档案文件列表的内容。
我们有些时候只需要列出存档文件内容而不提取它们。下面的例子将帮助你做到这一点。
# tar -tvf youcl-16-apr-2013.tar
# tar -tvf youcl-16-apr-2013.tar.gz
# tar -tvf youcl-16-apr-2013.tar.bz2
例5:解压缩的 .tar 存档文件。
要解压缩.tar 文件使用以下命令 。它会在当前路径提取所有的文件和目录(含子目录)。在不同的位置解压请查看例8。
# tar -xvf youcl-16-apr-2013.tar
例6:解压缩 .tar.gz 格式存档文件。
解压缩 .tar.gz(tar + gzip)文件,使用以下命令。它会提取当前路径下的所有文件和目录。
# tar -xvf youcl-16-apr-2013.tar
例7:解压缩 .tar.bz2 格式存档文件。
例如使用下面解压缩 .tar.bz2 格式(tar + bz2)文件。它会提取当前路径下的所有文件和目录。
# tar -xvf youcl-16-apr-2013.tar
例8:在不同的位置提取存档。
使用 -C 命令行来指定提取存档文件位置目录。
# tar xf youcl-16-apr-2013.tar -C /Output/Dir/
例9:验证的.tar存档文件。
要使用 “t” “W”验证 .tar 文件。对于您的信息和名为 .tar.gz .tar.bz2 格式不能使用此进行验证。使用下面的命令来验证您的tar文件。
# tar tvWf /root/youcl-16-apr-2013.tar
示例输出:
tar: This does not look like a tar archive
tar: Skipping to next header
tar: VERIFY FAILURE: 13 invalid headers detected
Verify -rw------- root/root 0 2013-03-31 03:50 var/log/spooler-20130407
Verify -rw------- root/utmp 384 2013-04-12 21:31 var/log/btmp
Verify -rw-r--r-- root/root 211614 2013-03-18 19:20 var/log/dracut.log
Verify -rw------- root/root 5793 2013-04-12 22:20 var/log/secure
Verify -rw-r--r-- root/root 4952 2013-04-01 14:40 var/log/krb5kdc.log-20130401
Verify drwxr-xr-x root/root 0 2011-12-08 06:00 var/log/spice-vdagentd/
Verify drwx------ root/root 0 2013-04-12 14:57 var/log/samba/
Verify -rw-r--r-- root/root 0 2013-04-09 01:58 var/log/samba/log.192.168.1.199
Verify -rw-r--r-- root/root 1972 2013-04-12 14:37 var/log/samba/log.nmbd
var/log/samba/log.nmbd: Mod time differs
var/log/samba/log.nmbd: Size differs
Verify -rw------- root/utmp 384 2013-03-18 20:26 var/log/btmp-20130401
Verify -rw-r--r-- root/root 1382 2013-04-11 13:53 var/log/kadmind.log
Verify drwxrwx--T root/gdm 0 2013-04-11 13:53 var/log/gdm/
Verify -rw-r--r-- root/root 0 2013-04-11 13:53 var/log/gdm/:0-slave.log
Verify -rw-r--r-- gdm/gdm 1387 2013-04-05 17:07 var/log/gdm/:0-greeter.log.1
Verify -rw-r--r-- root/root 18983 2013-03-25 14:10 var/log/gdm/:0.log.3
Verify -rw-r--r-- root/root 19028 2013-04-05 17:06 var/log/gdm/:0.log.1
Verify -rw-r--r-- root/root 18983 2013-03-22 15:42 var/log/gdm/:0.log.4
Verify -rw-r--r-- root/root 98 2013-04-05 17:07 var/log/gdm/:0-slave.log.1
Verify -rw-r--r-- root/root 18983 2013-04-11 13:53 var/log/gdm/:0.log
tar: Exiting with failure status due to previous errors
由于输出的一大串,上面命令只隐藏了部分输出。 参考文献:使用下面了解更多详情参考
http://www.gnu.org/software/tar/manual/tar.html