Linux压缩文件命令tar使用详解及注意事项

一、tar命令功能

将许多文件一起保存至一个单独的磁带或磁盘归档,并能从归档中单独还原所需文件。

1、用法

tar [选项…] [FILE]…

2、示例

  • tar -cvf robin.tar bc.txt robin.txt # 把文件bc.txt和robin.txt压缩成一个归档文件robin.tar。
  • tar -tvf robin.tar # 详细列举归档文件 robin.tar 中的所有文件。
  • tar -xf robin.tar # 解压缩归档文件robin.tar 中的所有文件。

二、tar命令参数

1、主操作模式

-c, –create 创建一个新归档
-r, –append 追加文件至归档结尾
-t, –list 列出归档内容
-x, –extract, –get 从归档中解出文件

2、压缩选项

-a –auto-compress,使用归档后缀名来决定压缩程序
-I 通过 PROG 过滤(必须是能接受 -d选项的程序)
-j –bzip2,通过 bzip2 过滤归档
-J –xz,通过 xz 过滤归档
-z –gzip, –gunzip, –ungzip,通过 gzip 过滤归档
-Z –compress, –uncompress ,通过 compress 过滤归档

3、其它参数

-v –verbose, 详细地列出处理的文件
-f –file=ARCHIVE,使用归档文件,此参数必须最后一个出现,并紧跟文件名。
-C –directory=DIR,改变至目录 DIR (注意:该参数为大写的C)

三、tar命令示例

1、将当前目录下的“文档”和“模板”文件夹打包成一个文件“文件.tar”,但不执行压缩操作程。

robin@robin-Lenovo:~$ tar -cf 文件.tar 文档 模板

2、查看压缩文件“文件.tar”里面有哪些文档

robin@robin-Lenovo:~$ tar -tvf 文件.tar

3、将当前目录下的bc.txt和robin.txt以tar.gz格式压缩成一个文件robin.tar.gz,并显示执行过程。

robin@robin-Lenovo:~$ tar -czvf robin.tar.gz bc.txt robin.txt
bc.txt
robin.txt

4、将当前目录下的bc.txt和robin.txt以tar.zx格式压缩成一个文件robin.tar.zx,并将该文件保存到“文档”目录中。

robin@robin-Lenovo:~$ tar -cJvf 文档/robin.tar.zx bc.txt robin.txt
bc.txt
robin.txt

5、将当前目录下robin.tar.gz,解压缩到“文档”目录中。

robin@robin-Lenovo:~$ tar -zxvf robin.tar.gz -C 文档/
bc.txt
robin.txt

四、压缩格式tar、tar.gz和tar.zx压缩区别

  • tar只是将文档打包,相当于归档处理,并不做压缩处理,省时但压缩比率小;
  • tar.zx压缩出来的文件最小,但执行起来比较费时
  • tar.gz格式在压缩比率和用时上处理的比较好,建议使用此格式压缩文档
  • 具体还需根据情况选择合适的方式来执行压缩操作。