zip格式

压缩

zip 压缩后的文件名 源文件名

其他选项

-r  #压缩目录

不加则只压缩目标目录下的所有文件加上二级目录本身,二级目录下的文件不会被压缩。例如:zip learn.zip learn/*

解压

unzip FileName  #自动解压到当前所在目录

除本文中zip以外的压缩工具都不可压缩目录。

例子:

压缩
[root@626 ~]# zip 1.txt.zip 1.txt
[root@626 ~]# ls
[root@626 ~]# 1.txt.zip 1.txt

解压
[root@626 ~]# unzip 

gz格式

压缩

gzip src_file

解压

gunzip #解压后会自动删除压缩包
gzip -d 压缩包名  #同样删除压缩包

其他选项

-l  #显示压缩包内容

例子:

#[root@626 ~]# gzip 1.txt
#[root@626 ~]# ls
#[root@626 ~]# 1.txt

它不支持目录压缩,还有压缩文件后源文件会删除。

如果压缩目录的话目录下的所有子文件也会单独成一个压缩包,压缩的归档文件,只能压缩一个文件(bzip2一样),压缩后会自动删除文件。

bz2格式

压缩

bzip2 [-z] src_file  #-z是压缩,默认就是-z,加不加一样。

解压

bzip2 -d 压缩文件

不可以压缩目录,同样删除源文件,如果解压或压缩保留源文件可用以下选项。

-k  #保留压缩文件

例子:

bunzip2 -k 压缩文件 

xz格式

压缩

xz src_file  #默认为-z

解压

xz -d file

其他选项

-l  #显示出压缩文件列表内容

也不可压缩目录

tar归档

归档是把多个文件打包成一个文件,但不减少文件体积,可以打包目录与文件,后缀是.tar。

打包

tar -cvf 归档名 归档的文件

几个选项

-c  #创建归档
-v  #显示详细信息
-f  #压缩或解压创建的归档文件名,要注意-f后面一定是跟上文件名如果是其他选项会报错。
    #例如:`tar -cfv gzip.tar gziplearning`它会把v当做文件名,
    #而把`gzip.tar gziplearning`当做要压缩的对象。
-x  #解压
-C  #指定解压目录
-t  #查看tar包内文件
--exclude 要排除的打包文件

-z  #调用gzip压缩
-j  #调用bzip2压缩
-J  #调用xz压缩

例子:

1.打包
[root@626 ~] #tar -cvf 1.txt 1.tar
[root@626 ~]# ls
[root@626 ~]# 1.txt 1.tar

查看内容
[root@626 ~]# tar -tf gzip.tar  #-t查看tar包内容列表,-f指定查看文件的名字

解包
[root@626 ~]# tar -xf gzip.tar

2.采用先打包后压缩的方式压缩文件
[root@626 ~]# tar -cvzf text_Path.tar.gz 1.txt  
#-z采用gzip方式压缩,-j是bzip2,-J是xz。

解压缩
[root@626 ~]# tar -xzvf text_Path.tar.gz 1.txt
#不加上压缩方式均可解压(bzip2,gzip,xz已测试)
[root@626 ~]# tar -xf gzip.tar.gz  

排除要打包的文件
[root@626 ~]# ls
1.txt  anaconda-ks.cfg
[root@626 ~]# tar --exclude 1.txt -cvjf 1sadf.tar.bz2 ./*
./anaconda-ks.cfg
[root@626 ~]# ls
1sadf.tar.bz2  1.txt  anaconda-ks.cfg
[root@626 ~]# tar -tf 1sadf.tar.bz2 
./anaconda-ks.cfg

查看压缩包内文本文件内容

zcat  #查看zip
bzcat  #查看bzip2
xzcat  #查看xz

标签: none

讨论讨论讨论!