tar命令打包和压缩与解压

  • Post author:
  • Post category:其他


**



tar命令打包和压缩与解压

**

Linux里压缩与打包时分开的:

打包:多个文件变一个文件。该一个文件会大于整体所有文件,因为会添加各个信息说明哪到哪是一个文件.

压缩:大文件变小文件。

归档:将多个文件变成一个文件,这个文件就是归档文件.

打包命令: tar -cvf 归档路径 被打包文件路径。

(c–create archive v-verbose f –file ,f指归档路径,故f必须放在其他选项之后,而且-可省略不写)

单独打包命令:  tar -cvf 归档路径 被打包路径.  (整体文件变大,后缀一般是.tar)
gzip压缩命令:     tar -zcvf 归档路径 被打包路径.  (gun-zip压缩,后缀一般是.tar.gz)

bzip2压缩命令:   tar -jcvf  归档路径 被打包路径.  (bzip2压缩,后缀一般是.tar.bz2)

例子:

[root@lbg test]# ls
a  b  c  d
[root@lbg test]# tar -cvf test.tar a b c d  ---将文件abcd打包为test.tar
[root@lbg test]# ls
a  b  c  d  test.tar
可以单独的打包,但不可单独的压缩,单独的-z命令是不行的.
[root@lbg test]# tar -zcvf test.tar.gz a b c d     ---打包并gzip压缩。
[root@lbg test]# ls
a  b  c  d  test.tar  test.tar.gz
[root@lbg test]# tar -jcvf test.tar.bz2 a b c d  ---打包并bzip2压缩。
[root@lbg test]# ls
a  b  c  d  test.tar  test.tar.bz2  test.tar.gz

打包时归档路径可以相对/绝对路径,被打包文件路径最后是相对路径,用绝对路径也可以,但会有警告.另外如果是绝对路径,则会打包的是该绝对路径下的文件,而非目录下的具体文件.

解压:

拆包时有同名文件会直接覆盖,tar打包的都可拆,加不加z .j都可。

但如果加了z或j,就只能拆对应的zip或bzip2格式的包.

拆包命令:(-x 拆包 -C 指定解压路径)

 tar -xvf 归档文件路径   ---可拆tar/gzip/bzip2格式的包
tar -zxvf 归档文件路径   ---只可拆gzip格式的包

tar-jxvg 归档文件路径    ---只可拆bzip2格式的包

 unzip  test.zip                                  --拆zip格式的包

解压到指定位置的命令:tar -xvf test.tar -C /tmp –解压指定位置:到/tmp里,加-C (C –change dir.)

另外:选项中-可省略,v和省略.故可以:

tar  xvf  test.tar    ----或者 ----tar  xf  test.tar

Linux里一般不用zip包,但有的话,解压命令是: unzip test.zip

例子:

[root@lbg test]# tar -xvf test.tar -C /test/bb     
[root@lbg test]# tar -zxvf test.tar.gz -C /test/bb

[root@lbg test]# tar -jxvf test.tar.bz2 -C /test/bb



版权声明:本文为ai418348851原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。