0%

tar - 打包归档

tar - 打包归档

.. _linux_tar_beginner:

.. note::
十年磨一剑,霜刃未曾试。
唐 贾岛《剑客》

tar 先是归档(把许多文件收进一个包),再视情况套上 gzip/bzip2 变成 .tar.gz / .tar.bz2。标题别叫成「解压命令」——打包、查看、拆包它都能干,解压只是其中一环。

官方定义为:

tar - an archiving utility

命令格式

1
$ tar 主操作 [辅助选项...] [归档文件] [文件...]

主操作三选一(互斥):

  • -c:创建归档(打包)
  • -x:释放归档(拆包)
  • -t:只列出内容,不拆

常用辅助:

  • -z:经 gzip,得到 .tar.gz
  • -j:经 bzip2,得到 .tar.bz2
  • -v:过程中列出文件名
  • -f:后面跟归档文件名(几乎总要带)
  • --exclude=FILE:打包时跳过某些路径

打包并 gzip 压缩

1
2
3
4
5
$ tar czvf test.tar.gz a b c d
a
b
c
d

czvf 可记成:Create、gzip、Verbose、File。

只看包里有什么

1
2
3
4
$ tar tzvf test.tar.gz
-rw-rw-r-- oper/oper 12 2010-05-24 22:51 a
-rw-rw-r-- oper/oper 18 2010-05-24 22:51 b
...

-t 确认,再 -x,少拆错包。

拆包解压

1
2
3
4
5
$ tar zxvf test.tar.gz
a
b
c
d

单文件 .gz 没有 tar 层时,用 :ref:linux_gzip_beginner / :ref:linux_gunzip_beginner;Windows 常见的 .zip 则走 zip/unzip 一族。

处无为之事,行不言之教;作而弗始,生而弗有,为而弗恃,功成不居!