Linux下zip格式文件的解压缩和压缩
Linux下zip格式文件的解压缩和压缩
Linux下的软件包很多都是压缩包,软件的安装就是解压缩对应的压缩包。所以,就需要熟练使用常用的压缩命令和解压缩命令。最常用的压缩格式有.tar.gz/tgz, .tar.bz,.zip文件等。
.tar.gz/.tgz,.tar.bz这两种格式都可以用tar命令生成、解压。
但是zip格式的文件的压缩和解压缩分别需要不同的命令,压缩用zip命令,解压缩用unzip命令,而且这两个命令在某些linux系统中还没有附带,得自己安装。
1、zip、unzip在centos下的安装
=========================
$yum install -y unzip zip
2、zip压缩
============
一个zip压缩文件其中包括的无非两类文件:目录和文件,所以最一般的使用方法是学会压缩目录和压缩文件。
(1)把/home/zzl目录下面的mydata目录压缩为mydata.zip
$zip -r mydata.zip mydata
(2)把/home/zzl目录下面的abc文件夹和123.txt压缩成为abc123.zip
$zip -r abc123.zip abc 123.txt
3、unzip解压缩
===============
解压缩zip文件其实原理很简单,只要解压到某一个目录,或者当前目录即可。unzip命令可以直接解压,如果直接解压会把压缩包所有的内容解压到当前目录下,如果在解压的时候要指定解压到某一个目录,则可以使用-d dstDir选项指定目标目录。
(1)解压mydata.zip到当前目录
$unzip mydata.zip
(2)解压mydata.zip到dstDir目录
$unzip mydata.zip -d dstDir
4、验证压缩包是否完整
=====================
zip文件完整性验证的原理:
在压缩的时候就在,zip命令会在zip文件中存储对所有被压缩文件计算的crc值,所以,当我们要验证某一个zip文件是否完整的时候,只要重新计算一下zip中所有文件的crc值,然后和存在zip文件中的crc值对比一下,就可以知道这个zip文件是否完整了。
计算也不需要自己手动做,unzip命令提供了一个选项-t,使用它可以对zip文件的完整性进行验证。
$unzip -t mydata.zip
Archive: mydata.zip
testing: abc.txt OK
testing: dir1/ OK
testing: dir1/abc2.txt OK
No errors detected in compressed data of mydata.zip.
当看到上面的红色字的时候,表明mydata.zip没有问题。
以上的几个命令是使用zip的最小命令组,熟练使用之后,可以确保压缩、解压缩一切文件。
参考资料:
1、https://blog.csdn.net/wxyjuly/article/details/79398559
2、https://www.jb51.net/LINUXjishu/105916.html