日常操作中我们经常使用到文件压缩操作,其使用一些特定的算法来减小文件的大小,可以提高传输数据时的速率和减少数据在一些存储机制上占有的空间大小,实现空间利用最大化。

比如:如果你想通过邮箱发送一个文件夹,你会发现可能行不通,怎么办呢,难道将文件夹内的内容一个个发送吗?显然不用,因为邮箱不支持文件夹这种格式,所以我们需要将文件夹压缩,或将众多文件归档后压缩后,才能进行发送,这样不仅对应了邮箱支持的格式,而且还将提升传输效率。


任何一个文件在电脑上储存都有它的格式,现今各操作系统中最常用的压缩格式zip, rar;从功能上看rar格式比zip格式的压缩率更高,但压缩解压缩的时间也高于zip格式。当然除这两种格式外,还有很多的压缩格式。以下简述在命令行上压缩归档命令的一些技巧:

  • zip格式,由程序员菲尔卡次1989年发表,zip原义有拉链,速度的含义。zip在Linux,Mac os, Windows平台上都可以看到他的身影,虽然它在Linux下不太广泛,但在与其他平台交流数据时就很有用了。

1:在linux系统下用zip命令创建归档压缩文件:zip -r file.zip dir  //-r 表示对目录进行递归式归档

-q表示安静模式,不显示任何执行过程中的信息。

-d选项可以删除归档文件中一个或多个文件。 zip -d file.zip file1 file2 ...

2:unzip 可以提取出zip中的内容(相当于解压缩): unzip file.zip ;-l选项则可以列出压缩归档文件中的内容。

  • rar格式,开发者为尤金·罗谢尔,全名是“Roshal ARchive”,即“罗谢尔的归档”之意;多用于数据压缩与归档打包。
  • Linux下常用的的gz (gzip), bz2(bzip2), lzma格式:

1: gzip的使用方法(命令行, ->表示左边操作得到右边):

压缩:gzip filename->fliename.gz

解压缩:gunzip filename.gz->filename

列出压缩文件的属性信息:gzip -l filename.gz->各文件的具体信息

2: 因为gzip压缩只针对单个文件或数据流,所以时常与tar结合使用:

方式为先创建tar归档文件: tar -cvf filename.tar file1 file2 ... -> filename.tar

再使用gzip压缩: gzip filename.tar->filename.tar.gz

因为tar支持选项-z以gzip格式压缩,所以也可以:tar -cvzf filename.tar.gz file1 file2 .... ->filename.tar.gz

3:bzip2,lzma在功能与语法上与gzip相似,bzip2的压缩效率高于gzip,lzma最高

解压缩bzip2格式文件: bunzip filename.bz2 -> filename

解压缩lzma格式文件: unlzma filename.lzma -> filename

也可以使用-j, --lzma选项使用tar分别进行bzip2, lzma格式的压缩。

了解一些常见的压缩文件格式利于我们区分各式各样的文件噢。

zip,rar及linux下常用的压缩格式的更多相关文章

  1. Linux 下常用的压缩,解压方法

    压缩命令: tar.gz 格式: tar -zcvf  自定义压缩文件名.tar.gz   被压缩文件名 zip 格式: zip -r 自定义压缩文件名.zip 被压缩文件名 如果要压缩整个文件夹,也 ...

  2. Linux下常用的压缩与解压命令

    .tar (注:tar是打包,不是压缩!) 解包: tar xvf FileName.tar 打包: tar cvf FileName.tar DirName .gz 解压1: gunzip File ...

  3. Linux下对各种压缩文件处理

    Linux下最常用的打包程序就是tar了,使用tar程序打出来的包我们常称为tar包,tar包文件的命令通常都是以.tar结尾的.生成tar包后,就可以用其它的程序来进 行压缩了,所以首先就来讲讲ta ...

  4. linux下打包,压缩,解压缩

    Linux下最常用的打包程序就是tar了,使用tar程序打出来的包我们常称为tar包,tar包文件的命令通常都是以.tar结尾的.生成tar包后,就可以用其它的程序来进 行压缩了,所以首先就来讲讲ta ...

  5. Linux 下常用解压命令(转载)

    Linux下常用文件解压(包括rpm.deb包) Linux下怎么解后缀名是gzip的文件?1.以.a为扩展名的文件:#tar xv file.a2.以.z为扩展名的文件:#uncompress fi ...

  6. linux下常用的截图、录屏工具

    录屏: 在linux下常用的录屏工具有5种,可以baidu或者google下喔,我选用的是recordMydesktop,使用非常方便,用时注意先把每秒桢数调高,否则效果必然很差. 在ubuntu下可 ...

  7. linux下常用命令备忘

    转自:Linux 命令集锦 linux下查看监听端口对应的进程 # lsof -i:9000 # lsof -Pnl +M -i4 如果退格键变成了:"^h". 终端连接unix删 ...

  8. 20145239 Linux下常用的ls命令总结

    20145239 Linux下常用的ls命令总结 通过学习本周的教学视频和要求掌握的内容,发现ls命令被使用的次数非常多,但作为一个初学者,可能我只会ls或者顶多ls -l两种用法.但其实ls是一个非 ...

  9. Linux下常用的操作

    Linux下常用的操作 文件定位 locate filename 有些版本的linux会出现 -bash: locate: command not found错误,不要慌,安装一下mlocate包就好 ...

随机推荐

  1. JSONPath入门之Snack3篇

    Snack3 for java 一个微型JSON框架 基于jdk8,60kb.有序列化反序列化.解析和转换.支持 Json path 查询. <dependency> <groupI ...

  2. 从别人那里拿过来的工程,在Idea上打开时报错

    如果是这个错误:也许原因有很多种,但是不妨试一下⑴将给你项目工程的人的.idea文件夹删除,这样在你导入工程时,会生成一个属于你本地的.idea.⑵最好是使用SVN重新把项目工程检出(把项目下载下来, ...

  3. AVLTree的Python实现

    AVLTree 自己最近在学习数据结构,花了几天理解了下AVLTree的实现,简单一句话概括就是先理解什么是旋转,然后弄明白平衡因子在各种旋转后是如何变化的.最后整理了下学习的过程,并尽量用图片解释, ...

  4. HTML标签的for属性

    HTML 标签的 for 属性 for 属性规定 label 与哪个表单元素绑定. 隐式和显式的联系 label通常以下面两种方式中的一种来和表单控件相联系: 将表单控件作为标记标签的内容,这样的就是 ...

  5. JavaScript新手经常遇到的问题(一)

    1.:before和:after,position: absolute;才可以调节高宽 2.判断背景颜色 2.1.$(this).css("background-color")== ...

  6. .NET Core简单使用RabbitMq

    RabbitMQ简介 RabbitMQ是一个开源的,基于AMQP(Advanced Message Queuing Protocol)协议的完整的可复用的企业级消息队,RabbitMQ可以实现点对点, ...

  7. 3D硬件加速提升动画性能 与 z-index属性

    目录 1. chrome Layer borders 2. 层创建标准 3. 例子 总结 1. chrome Layer borders <WebKit技术内幕>第二章介绍了网页的结构,其 ...

  8. 源码编译安装 ganesha

    源码编译安装 ganesha 简介 系统环境:CentOS 7.5 ceph:luminous nfs-ganesha:v2.6 stable 安装步骤 安装依赖 首先需要安装编译会用到的公共库 1 ...

  9. 核心系统命令实战 第一章Linux命令行简介

    第一章Linux命令行简介 1.1 Linux命令行概述 1.1.1 Linux 命令行的开启和退出 开启:登陆账号密码进入系统 退出:exit/logout  快捷键:Ctrl+d 1.1.2 Li ...

  10. 源码分析 RocketMQ DLedger(多副本) 之日志复制(传播)

    目录 1.DLedgerEntryPusher 1.1 核心类图 1.2 构造方法 1.3 startup 2.EntryDispatcher 详解 2.1 核心类图 2.2 Push 请求类型 2. ...