Linux系统档案与文件系统的压缩与打包
以下文章基于centos6.5
文章引自:http://www.jb51.net/LINUXjishu/105916.html
一、Linux下常见的压缩指令
在linux的环境中,压缩文件的扩展名大部分是:[*.tar,*.tar.gz,*.tgz,*.gz,*.Z,*.bz2],为什么会有这样的扩展名呢?不是说Linux下的扩展名没有用么?
这是因为Linux支持的压缩指令非常多,且不同的指令所用的压缩技术并不相同,当然彼此之间可能就无法互通压缩/解压缩文件了。所以,当你下载到某个压缩文件时,自然就需要知道该档案是由哪种压缩指令压缩出来的,好用来对照着压缩啊!也就是说,虽然Linux档案的属性基本上是与文件名没有绝对关系的,但是为了帮助记忆,所以适当的扩展名还是有必要的。下面我们就列出几个常见的压缩文件档案扩展名吧。
*.Z compress程序压缩的档案;
*.gz gzip程序压缩的档案;
*.bz2 bzip2程序压缩的档案;
*.tar tar程序打包的数据,但是没有被压缩过;
*.tar.gz tar程序打包的数据,并且经过gzip压缩过;
*.tar.bz2 tar程序打包的数据,并且经过bzip2压缩过;
Linxu上常见的的压缩的指令是gzip和bzip2,compress已经退出流行了。
这个 tar 可以将徆多档案『打包』成为一个档案!甚至是目录也可以这么玩。不过,单纯的tar 功能仅是『打包』而已,亦即是将很多档案集结成为一个档案, 事实上,他并没有提供压缩的功能,后来,GNU 计划中,将整个 tar与压缩的功能结合在一起,如此一来提供使用者更方便并且更强大的压缩与打包功能! 底下我们就来谈一谈这些在 Linux 底下基本的压缩指令吧!
1.comprss
已经退出流行了。
2.gzip与zcat
gzip 可以说是应用度最广的压缩指令了!目前 gzip 可以解开 compress, zip与gzip 等软件所压缩的档案。 至于 gzip所建立的压缩文件为 *.gz 的档案名喔!让我们来看看这个指令的用法吧:

与 compress 类似的,当你使用 gzip 进行压缩时,在预设的状态下原本的档案会被压缩成为 .gz 的档名, 源文件就不再存在了。您也可以发现,由于 gzip 的压缩比要比 compress 好的多,所以当然建议使用 gzip 啦! 此外,使用 gzip 压缩的档案在 Windows 系统中,竟然可以被 WinRAR 这个软件解压缩呢!很好用吧!至于其他的用法如下:

其他范例:
1.Linux压缩保留源文件的方法:
gzip –c filename > filename.gz
2.Linux解压缩保留源文件的方法:
gzip –c filename.gz > filename
其实 gzip 的压缩已经优化过了,所以虽然 gzip 提供 1~9 的压缩等级,不过使用默认的6 就非常好用了! 因此上述的范例四可以不要加入那个 -9 的选顷。范例四的重点在那个 -c 与 > 的使用啰!
cat 可以读取纯文本档,那个 zcat 则可以读取纯文本档被压缩后的压缩文件! 由于gzip 这个压缩指令主要想要用来取代 compress 的,所以不但 compress 的压缩文件案可以使用 gzip 来解开,同时 zcat 这个指令可以同时读取 compress与gzip 的压缩文件呦!
3.bzip2
4.zip和unzip
在终端中数据zip和unzip来检查当前linux中是否安装了zip和unzip程序,如下表明安装了zip和unzip:


如果没有安装,使用以下命令安装:
yum install zip;
yum install unzip;
解压缩文件范例:
1、把/home目录下面的mydata目录压缩为mydata.zip
zip -r mydata.zip mydata #压缩mydata目录
2、把/home目录下面的mydata.zip解压到mydatabak目录里面
unzip mydata.zip -d mydatabak
3、把/home目录下面的abc文件夹和123.txt压缩成为abc123.zip
zip -r abc123.zip abc 123.txt
4、把/home目录下面的wwwroot.zip直接解压到/home目录里面
unzip wwwroot.zip
5、把/home目录下面的abc12.zip、abc23.zip、abc34.zip同时解压到/home目录里面
unzip abc\*.zip
6、查看把/home目录下面的wwwroot.zip里面的内容
unzip -v wwwroot.zip
7、验证/home目录下面的wwwroot.zip是否完整
unzip -t wwwroot.zip
8、把/home目录下面wwwroot.zip里面的所有文件解压到第一级目录
unzip -j wwwroot.zip
主要参数
-c:将解压缩的结果
-l:显示压缩文件内所包含的文件
-p:与-c参数类似,会将解压缩的结果显示到屏幕上,但不会执行任何的转换
-t:检查压缩文件是否正确
-u:与-f参数类似,但是除了更新现有的文件外,也会将压缩文件中的其它文件解压缩到目录中
-v:执行是时显示详细的信息
-z:仅显示压缩文件的备注文字
-a:对文本文件进行必要的字符转换
-b:不要对文本文件进行字符转换
-C:压缩文件中的文件名称区分大小写
-j:不处理压缩文件中原有的目录路径
-L:将压缩文件中的全部文件名改为小写
-M:将输出结果送到more程序处理
-n:解压缩时不要覆盖原有的文件
-o:不必先询问用户,unzip执行后覆盖原有文件
-P:使用zip的密码选项
-q:执行时不显示任何信息
-s:将文件名中的空白字符转换为底线字符
-V:保留VMS的文件版本信息
-X:解压缩时同时回存文件原来的UID/GID
5.tar
Linux系统档案与文件系统的压缩与打包的更多相关文章
- linux备忘录-档案与文件系统的压缩与打包
知识点 文件扩展名与压缩解压缩工具 .Z -> compress程序压缩的档案 .gz -> gzip程序压缩的档案 .bz2 -> bzip2程序压缩的档案 .tar -> ...
- 鸟哥的LINUX私房菜基础篇第三版 阅读笔记 四 档案的文件系统的压缩和打包
1.压缩文件案的用途与技术 a.用途,简单来说,就是节约磁盘空间.如果从传输角度讲,占用宽带也会小很多(Apache就有自动压缩的功能,节省宽带资源,提升网站的输出能力) b.压缩技术 ...
- linux——(5)文件与文件系统的压缩与打包
概念一:常见的压缩文件拓展名 .z compress程序压缩的文件. .gz gzip程序压缩的文件. .bz2 bzip2程序压缩的文件. .tar tar程序打包的数据,并没有压缩过. .tar. ...
- 鸟哥的linux私房菜之档案与文件系统的压缩与打包
00000001 节约空间 其实简单的说压缩就是把没有用到的0给去掉,解压的时候在加上 在linux中,压缩文件档案的扩展名大多是.tar,.tar.gz,tgz,gz,.Z,.bz2 compres ...
- Linux档案与文件系统的压缩与打包
总结: 压缩指令为透过一些运算方法去将原本的档案进行压缩,以减少档案所占用的磁盘容量.压缩前与压缩后的档案所占用的磁盘容量比值,就可以被称为是“压缩比” 压缩的好处是可以减少磁盘容量的浪费,在www网 ...
- Linux学习笔记—文件与文件系统的压缩与打包(转载)
压缩文件的用途与技术 例如,计算机都是以byte单位来计量的,1byte占8bit.如果存储数字1,那么1byte就会空出7bit.采用一定的计算方式,压缩这些空间可以大大降低文件存储. Linux系 ...
- Linux学习笔记之文件与文件系统的压缩与打包
四.文件与文件系统的压缩与打包 用途: 传输时减少带宽 Linux系统常见的压缩命令 Compass(旧版压缩,并且在centOS中默认为不安装) gzip, zcat bzip2, bzcat zi ...
- Linux中文件/文件系统的压缩、打包和备份总结(基于rhel7)
文件/文件系统的压缩.打包 Linux有哪些压缩工具可供选择 按压缩比:xz>bzip2>gzip,按压缩时长:gzip>bzip2>xz,另外还有zip可以选择. gzip只 ...
- Linux系统NFS网络文件系统
Linux系统NFS网络文件系统 NFS(network file system)网络文件系统,就是通过网络让不同的主机系统之间可以共享文件或目录,此种方法NFS客户端使用挂载的方式让共享文件或目录到 ...
随机推荐
- C++—动态内存管理之深入探究new和delete
C++中程序存储空间除栈空间和静态区外,每个程序还拥有一个内存池,这部分内存被称为自由空间(free store)或堆(heap).程序用堆来存储动态分配的对象,即,那些程序运行时分配的对象.动态对象 ...
- Swing入门
厌倦了在控制台使用键盘输入并显示结果的过程?是的,在你现在这台电脑上,已经很少有程序使用这种交互方式.本实验将带你初步进入图形用户界面(GUI)的世界,让你学会如何编写屏幕上那些具有特定大小和位置的窗 ...
- vue监听滚动事件,实现滚动监听
在vue中实现滚动监听和原生js无太大差异,下面是一个简单的demo,可在控制台查看结果 <!DOCTYPE html> <html lang="en"> ...
- centos5.11架设svn(svn系列 架设服务器 知识一总结)
♣svn是什么? ♣安装 --yum安装 --创建svn版本库目录 --创建版本库 --进入conf目录进行配置(该svn版本库配置文件) --启动svn版本库 - ...
- Zookeeper的安装和初步使用
1. Zookeeper集群角色 Zookeeper集群的角色: Leader 和 follower (Observer) zk集群最好配成奇数个节点 只要集群中有半数以上节点存活,集群就能提供 ...
- 使用VS2015将解决方案同步更新到Github上
如今开源已经是一种趋势与潮流了,今天就来谈一谈如何将利用VS将我们的解决方案同步更新到Github上. 第一步:登录自己的Github账号(没有的自行注册). 我的Github登录后的界面: 第二步: ...
- Activity间传递数据
1.从当前的Activity传递数据到下一个Activity: (1)发送方(当前的Activity): Bundle bundle = new Bundle(); bundle.putString ...
- Sphinx安装流程及配合PHP使用经验
1.什么是Sphinx Sphinx是俄罗斯人Andrew Aksyonoff开发的高性能全文搜索软件包,在GPL与商业协议双许可协议下发行. 全文检索式指以文档的全部文本信息作为检索对象的一种信息检 ...
- 常用SQL_官方文档使用
SQL语句基础理论 SQL是操作和检索关系型数据库的标准语言,标准SQL语句可用于操作关系型数据库. 5大主要类型: ①DQL(Data Query Language,数据查询语言)语句,主要由于se ...
- MongoDB基础教程系列--第七篇 MongoDB 聚合管道
在讲解聚合管道(Aggregation Pipeline)之前,我们先介绍一下 MongoDB 的聚合功能,聚合操作主要用于对数据的批量处理,往往将记录按条件分组以后,然后再进行一系列操作,例如,求最 ...