10月8日任务

6.5 zip压缩工具
6.6 tar打包
6.7 打包并压缩
看下这个帖子: http://ask.apelearn.com/question/5435


zip压缩工具支持压缩目录


一般rar文件放linux下也无法进行解压缩

用法不太一样

zip 压缩后的名字 被压缩的文件

入门一班 20181008 zip压缩工具 tar


zip压缩目录

入门一班 20181008 zip压缩工具 tar

zip 压缩后的目录文件名称 要压缩的目录 

而且zip压缩后不删除原来的文件

入门一班 20181008 zip压缩工具 tar

入门一班 20181008 zip压缩工具 tar

入门一班 20181008 zip压缩工具 tar


可以采用 -d 选项来指定解压后的路径

unzip 待解压文件 -d 解压后路径

入门一班 20181008 zip压缩工具 tar


zip的压缩包无法直接查看内容


zip无法指定解压后的名字,依然是压缩前的名字。


可以查看压缩包里的文件的列表 

unzip -l 

入门一班 20181008 zip压缩工具 tar




tar打包工具

入门一班 20181008 zip压缩工具 tar


假设一种情况:

需要传输几个目录但是目录里有多达10000个文件,因为传输的过程中是一个一个传输的,所以需要的时间是相叠加。

打包的话就是将所有的文件打包成一个大的文件,来传输这个大文件。

而且还有一种情况就是如果都是小文件小于4k的居多,一个文件4k,10000个就是 40000k 40M

而打包的话,会把不到4k的文件进行相加,所以平均下来每个文件大小也会缩小,总打包后的数据会小于40M


tar -cvf 打包后的文件名 待打包的文件/目录

c表示create

v表示visual

f表示后面跟文件名 

所以f是必须的,因为要跟打包后的文件名,v可是灭有

入门一班 20181008 zip压缩工具 tar


入门一班 20181008 zip压缩工具 tar

入门一班 20181008 zip压缩工具 tar

所以大小是几乎不发生变化的,出发很多小于4k的文件

入门一班 20181008 zip压缩工具 tar

被打包的可以是目录,文件,或者是目录和文件的组合


解包是用 -xvf

如果是希望解包到具体的路径 需用有 -C 选项

tar xvf 包 -C 解包路径

入门一班 20181008 zip压缩工具 tar


tar -tf 包就可查看包里的列表

入门一班 20181008 zip压缩工具 tar


如果遇到情况就是一个目录下并非所有的文件你都想打包的话,如何?

可以使用--exclude 不包括谁,来排除掉


tar -cvf 包.tar --exclude 某某文件 然后再跟打包目录或文件

入门一班 20181008 zip压缩工具 tar

入门一班 20181008 zip压缩工具 tar

如果不止一个文件需要过滤,需要每个前面都要写上 --exclude. 支持通配符,比如 --exclude "*.txt"



tar打包并压缩

入门一班 20181008 zip压缩工具 tar

记住选项里写的哪种压缩方式,对应的文件名要添加哪一种的压缩格式的后缀

z -------gz

j--------bz2

J-------xz

因为zip注意是可以压缩目录,所以这里用不上。因为这样理解,整个过程是先打包,再压缩,所以不管什么压缩方式,压缩的时候都针对的是这个包了。



tar -tf 就可以直接查看文件列表。不管是压缩后的还是一个包都是用的-tf