tar 打包工具详解

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了tar 打包工具详解相关的知识,希望对你有一定的参考价值。

         tar 本身为一个打包工具,可以把目录打包成一个文件,它的好处是把所有文件整合成一个大文件整体,便于拷贝或移动。

         语法:tar [-zjxcvfpP] filename

         tar 目录有多个选项:

         -z:同时用gzip压缩

         -j:同时用bzip2压缩

         -x:解包或者解压缩

         -t:查看 tar 包里面的文件

         -c:建立一个 tar 包或者压缩文件包

         -v:可视化

         -f:后面跟文件名,压缩时跟“-f 文件名”,意思是压缩后的文件名为filename,解压时跟“-f 文件名”,意思是解压filename,为了避免错误识别,多个选项并用时,把 f 放在后面。

         -p :使用原文件的属性,压缩前什么属性压缩后还什么属性(不常用)

         -P:可以使用绝对路径(不常用)

         --exclude filename:在打包或者压缩时,不要将 filename 文件包括在内(不常用)

[[email protected] test]# mkdir test111
[[email protected] test]# touch test111/test2.txt
[[email protected] test]# echo "nihao">!$
echo "nihao">test111/test2.txt
[[email protected] test]# ls
test111  test.txt.xz
[[email protected] test]# tar -cvf test111.tar test111
test111/
test111/test2.txt
[[email protected] test]# ls
test111  test111.tar  test.txt.xz

          可以不加 -v 即不可视化。

[[email protected] test]# rm -f test111.tar
[[email protected] test]# tar -cf test.tar test111 test.txt.xz
[[email protected] test]# ls
test111  test.tar  test.txt.xz

          解压包:

[[email protected] test]# rm -rf test111
[[email protected] test]# ls
test.tar  test.txt.xz
[[email protected] test]# tar -xvf test.tar
test111/
test111/test2.txt
test.txt.xz

          --exclude 使用:

[[email protected] test]# tar -cvf test111.tar --exclude test3.txt test111
test111/
test111/test2.txt
test111/test4.txt
test111/test5/
[[email protected] test]# rm -f test111.tar
[[email protected] test]# tar -cvf test111.tar --exclude test5 test111
test111/
test111/test2.txt
test111/test3.txt
test111/test4.txt

tar 打包和压缩并用

      tar命令支持gzip压缩和bzip2压缩以及xz。

[[email protected] test]# tar -czvf test111.tar.gz test111
test111/
test111/test2.txt
test111/test3.txt
test111/test4.txt
test111/test5/
[[email protected] test]# ls
test111  test111.tar  test111.tar.gz  test.tar  test.txt.xz

         这里起主要作用的是 -z 选项,表示使用 gzip 压缩。“-tf“可以查看包或压缩包的文件列表:

[[email protected] test]# tar -tf test111.tar.gz
test111/
test111/test2.txt
test111/test3.txt
test111/test4.txt
test111/test5/

        ”-zxvf“用来解压 .tar.gz 的压缩包

[[email protected] test]# rm -rf test111
[[email protected] test]# ls
test111.tar  test111.tar.gz  test.tar  test.txt.xz
[[email protected] test]# tar -zxvf test111.tar.gz
test111/
test111/test2.txt
test111/test3.txt
test111/test4.txt
test111/test5/
[[email protected] test]# ls
test111  test111.tar  test111.tar.gz  test.tar  test.txt.xz

        bzip2的压缩包使用”-cjvf“选项来实现

[[email protected] test]# tar -cjvf test111.tar.bz2 test111
test111/
test111/test2.txt
test111/test3.txt
test111/test4.txt
test111/test5/
[[email protected] test]# ls
test111  test111.tar  test111.tar.bz2  test111.tar.gz  test.tar  test.txt.xz
[[email protected] test]# tar -tf test111.tar.bz2
test111/
test111/test2.txt
test111/test3.txt
test111/test4.txt
test111/test5/

          解压用”-jxvf“

[[email protected] test]# rm -rf test111
[[email protected] test]# tar -jxvf test111.tar.bz2
test111/
test111/test2.txt
test111/test3.txt
test111/test4.txt
test111/test5/
[[email protected] test]# ls
test111  test111.tar  test111.tar.bz2  test111.tar.gz  test.tar  test.txt.xz

         打包使用 xz 的形式压缩与解压:

[[email protected] test]# tar -cJvf test111.tar.xz test111
test111/
test111/test2.txt
test111/test3.txt
test111/test4.txt
test111/test5/
[[email protected] test]# ls
test111      test111.tar.bz2  test111.tar.xz  test.txt.xz
test111.tar  test111.tar.gz   test.tar
[[email protected] test]# rm -rf test111
[[email protected] test]# tar -Jxvf test111.tar.xz
test111/
test111/test2.txt
test111/test3.txt
test111/test4.txt
test111/test5/
[[email protected] test]# ls
test111      test111.tar.bz2  test111.tar.xz  test.txt.xz
test111.tar  test111.tar.gz   test.tar



本文出自 “散宜生的学习笔记” 博客,请务必保留此出处http://sanyisheng.blog.51cto.com/11154168/1795715

以上是关于tar 打包工具详解的主要内容,如果未能解决你的问题,请参考以下文章

tar打包工具详解

Linux下的tar归档及解压缩功能详解

linux打包压缩工具详解

Tomcat 项目代码上线步骤详解

打包压缩解压缩工具详解

4.2 Linux tar打包命令详解