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

Linux下zip格式文件的解压缩和压缩的更多相关文章

  1. LearnPython - Zip格式文件的解压缩

    import zipfile import os def unzip(zip_name, target_dir): files = zipfile.ZipFile(zip_name) for zip_ ...

  2. linux下tar.bz2文件的 解压缩方法

    一 使用bzip2解压缩命令进行解压缩: bzip2 -d  gcc-4.1.0.tar.bz2 二 上面解压完之后执行下面的命令. tar -xvf gcc-4.1.0.tar 或 tar -xvf ...

  3. linux 下 zip unzip压缩与解压

    注:*压缩成限.zip格式文件 常用解压缩: [root@mysql test]# unzip -o test.zip -d tmp/ 将压缩文件test.zip在指定目录tmp下解压缩,如果已有相同 ...

  4. Linux下几种文件传输命令

    Linux下几种文件传输命令 sz rz sftp scp 最近在部署系统时接触了一些文件传输命令,分别做一下简单记录: 1.sftp Secure Ftp 是一个基于SSH安全协议的文件传输管理工具 ...

  5. 用脚本如何实现将Linux下的txt文件批量转化为Windows下的txt文件?

    众所周知,Windows和Linux的文件换行回车格式不同,Windows下换行格式是\r\n(回车+换行),Linux下换行格式为\n(只是换行),因此,其中一个操作系统的文本文件若需要在另外一个中 ...

  6. Linux下重要日志文件及查看方式

    http://os.51cto.com/art/201108/282184_all.htm   1.Linux下重要日志文件介绍 /var/log/boot.log 该文件记录了系统在引导过程中发生的 ...

  7. Linux下阅读MHT文件

    Linux下阅读MHT文件 2016年02月04日 15:11:32 dj0379 阅读数:1769   mht是一种WEB电子邮件档案,用IE选择保存网页类型时可以看到有这一项,其最大优点是所保存的 ...

  8. Linux下输出 excel文件

    Linux下输出 excel文件 今日提供给产品需求,需excel文件,故总结要点如下: 1.默认间隔是space_20 2.修改为TAB \t _09 awk '  BEGIN { OFS=&quo ...

  9. [转帖]linux下的find文件查找命令与grep文件内容查找命令

    linux下的find文件查找命令与grep文件内容查找命令 https://www.cnblogs.com/shileima/p/8431393.html 在使用linux时,经常需要进行文件查找. ...

随机推荐

  1. 如何在PostgreSQL中建只读账号

    转: 如何在PostgreSQL中建只读账号 Posted on 2014-01-21 22:00:15 by osdba 在PostgreSQL中并没有CREATE TABLE权限名称,这是与其它数 ...

  2. ubuntu1604-server上安装virtualbox+phpvirtualbox

    1.需要安装phpvirtualbox版本与virtualbox的版本一致,比如phpvirtual5.0.x,需要对应virtualbox 5.0.x 2.需要安装的软件有apache2.php.l ...

  3. git pull VS git fetch&merge

    使用git fetch和git pull都可以更新远程仓库的代码到本地,但是它们之间还是有区别. git fetch  git fetch origin master git log -p maste ...

  4. js 扩展实例

    //扩展实例1 字符串中首字符转大写 var test=' this is '; String.prototype.mytrim=function(){ var re=/^\s+(.*?)\s+$/; ...

  5. Developing IOS Application with Delphi Xe4 .only for play the toy?

    Recently, i am working on r&d of some keypoint of some app idea. if all thing ok, i will continu ...

  6. Metasploit的基本使用

    Metasploit可以在Linux.Windows和Mac OS X系统上运行.我假设你已安装了Metasploit,或者你使用的系统是Kali Linux.它有命令行接口也有GUI接口. 我使用的 ...

  7. (六)js常见四大排序

    今天突然想回顾一下四大排序,虽然说在实战中没有用到,但是想回顾一下四大排序的思想   var arr = [23, 34, 11, 22, 19, 18];   1.冒泡排序: 冒泡排序的思路分析: ...

  8. wlan经常掉线怎么办?

    有没有这样的情款,好好的网络总是突然断掉然,之后就需要重新连接,连接以后没多久有需要重新连接.本次经验就来和大家一起分享一下几种情况的解决方法,非常的简单实用. 工具/原料 电脑 电源设置问题 1.本 ...

  9. 解决Maven报Plugin execution not covered by lifecycle configuration问题

    问题: 在eclipse neon 中引入maven项目时,弹出两个错误,一个是jacco-maven-plugin,一个是项目中的插件ota-schema-plugin 如果忽略这两个错误,点击fi ...

  10. Android中内容观察者的使用---- ContentObserver类详解 (转)

    前言: 工作中,需要开启一个线程大量的查询某个数据库值发送了变化,导致的开销很大,后来在老大的指点下,利用了 ContentObserver完美的解决了该问题,感到很兴奋,做完之后自己也对Conten ...