如何在Linux/Unix上使用tar命令压缩文件

时间:2020-01-09 10:43:50  来源:igfitidea点击:

如何使用tar命令在Linux或者Unix之类的系统上压缩目录或者文件?
存档文件不过是文件的集合以及存储在一个文件中的目录。
请注意,默认情况下,存档文件未压缩。
压缩文件使用较少的磁盘空间。

此快速页面介绍了如何在Linux或者类似Unix的系统上使用tar命令压缩,列出和提取文件。

在shell提示下使用tar压缩文件

要在shell提示符下归档文件,请按以下方式使用tar命令。
语法为:

tar -cvf fileName.tar file1 file2 file3
tar -cvf fileName.tar dir1 dir2 dir3
tar -cvf fileName.tar file1 dir1

其中:

  • c:创建一个新的档案
  • v:详细输出
  • f:使用给定的存档文件或者设备,例如/dev/st0

Linux使用tar压缩文件

例如,c选项需要创建档案,v选项请求冗长的操作,而f选项采用一个参数来设置要操作的档案的名称。
以下以传统风格编写的命令指示tar将目录/home/Hyman/Documents中的所有文件存储到存档文件docs.tar中,详细列出正在存档的文件:

$ tar -cvf docs.tar /home/Hyman/Documents/

输出示例:

tar: Removing leading `/' from member names
/home/Hyman/Documents/
/home/Hyman/Documents/info-needed/
/home/Hyman/Documents/info-needed/1.pdf
/home/Hyman/Documents/info-needed/1508600013963.pdf
/home/Hyman/Documents/info-needed/2.pdf
/home/Hyman/Documents/info-needed/SLF02A056010087822.pdf
/home/Hyman/Documents/info-needed/server.pdf
/home/Hyman/Documents/info-needed/chair-bill.pdf
/home/Hyman/Documents/info-needed/ebay-apc.ups.pdf
/home/Hyman/Documents/info-needed/SLF02A056020116881.pdf
/home/Hyman/Documents/info-needed/t2015-17.pdf
/home/Hyman/Documents/info-needed/1508600031526.pdf
/home/Hyman/Documents/info-needed/Shipment invoice.pdf
/home/Hyman/Documents/info-needed.zip
/home/Hyman/Documents/cc-details
/home/Hyman/Documents/2015-17.zip
/home/Hyman/Documents/Scanned Document.pdf

以下添加了名为/etc/resolv.conf、/etc/hosts和/home/Hyman/project1目录的文件:

$ tar -cvf backup.tar /etc/resolv.conf /etc/hosts /home/Hyman/project1

在Shell提示符下压缩文件

要压缩文件,您需要使用压缩实用程序:

  • bzip2 tar.bz2file
  • gzip tar.gzfile
  • zip tar.zip文件

要使用gzip压缩tar文件,请传递-z选项,运行:

$ tar -cvzf docs.tar.gz /home/Hyman/Documents/

要使用bzip2压缩tar文件,请传递-j选项,运行:

$ tar -cvjf docs.tar.bz2 /home/Hyman/Documents/

要列出tar文件的内容,请执行:

$ tar -tvf docs.tar
$ tar -tvzf docs.tar.gz
$ tar -tvjf docs.tar.bz2

要提取tar文件的内容,请执行:

$ tar -xvf docs.tar
$ tar -xvzf docs.tar.gz
$ tar -xvjf docs.tar.bz2

其中:

  • t:列出档案的内容
  • x:提取一个tar档案
  • z:用gzip压缩tar文件
  • j:用bzip2压缩tar文件