压缩与打包(笔记)

来源:互联网 发布:震惊国外网络购物视频 编辑:程序博客网 时间:2024/06/05 02:46

几种常见的压缩文件案扩展名

*.Z 

*.gz

*.bz2

*.tar

*.tar.gz

*.tar.bz2

compress程序压缩的文件;

gzip程序压缩的文件;

bzip2程序压缩的文件;

tar程序打包的数据,并没有压缩过;

tar程序打包的文件,经过gzip压缩;

tar程序打包的文件,经过bzip2的压缩;

tips

虽然说Linux文件的属性基本上与文件名没有绝对的关系,但为了人们便于区分对应的压缩命令(linux压缩命令非常多,不同的命令使用的压缩技术也不同),适当的扩展名还是有必要的;

 

Liinux常用的压缩命令即gzipbzip2gizp是有GNU计划所开发出来的压缩命令,替换了compress;后来GNU又开发出了压缩比更好的bzip2

这些命令通常只能针对一个文件来压缩与解压缩,打包软件tar应运而生;

单纯的tar功能仅仅是“打包”而已,既是把很多文件集结成一个文件,并没有提供压缩功能;

后来的GNU计划把 tar与压缩功能结合在一起,提供使用者更方便且更强大的压缩与打包功能;

tips

1Byte=8bit,而这8bit并不总是完全被使用,比如数字1,仅占用最右边的1bit,而其它7bit将会被自动填上0(实际是空的),不过为了OS数据的访问,会将该数据转为Byte形态来记录,不满1Byte也算作1Byte;利用一些复杂的计算方式,将这些没有使用到的空间“丢”出来,让文件占用的空间变小,这就是压缩技术;

 

compress

compress [-rcv]文件或目录

-r:连同目录下的文件同时给予压缩;

-c:将压缩文件输出成 standard output(输出到屏幕)

-v:可以显示出压缩后的文件信息以及压缩过程中一些文件名变化;

tipsgzip已经可以解开compress压缩的文件,cpmress已不再流行;

 

gzipzcat(查看压缩文件的内容)

gzip [cdtv#]文件名

-c:将压缩数据输出到屏幕,可通过数据流重定向来处理;

-d解压缩的参数;

-t:可用来检验一个压缩文件的一致性,看文件有无错误;

-v:可以显示出 原文件/压缩文件压缩比信息;

-#:压缩等级,-1最快,压缩比最差;-9最慢,但是-6压缩比最好;

tipsgzip不但可以解开compress的压缩文件,zcat也可读取compress的压缩文件内容(完全取代compress)

 

 

bzip2bzcat

如果说gzip是为了替代copress并提供更好的压缩比而成立的,bzip2则是为了取代gzip并提供更佳的压缩比而来的;

bzip2 [-cdkzv#]文件名

-c:将压缩过程产生的数据输出到屏幕;

-d解压缩的参数;

-k:保留原文件,不会删除原始的文件;

-z压缩的参数;

-v:压缩比信息;

-#:与gzip同样 -1最快,-9最佳;

 

 

tar

tar [-j|-z] [cv] [-f新建文件名] filename

 

 

tar [-j|-z] [tv] [-f新建文件名]

 

 

tar [-j|-z] [xv] [-f新建文件名] filename

-c:新建打包文件,可搭配-v来查看过程中被打包的文件名(filename)

-t:查看打包文件中含有哪些文件名,重点在查看文件名

-x:解打包或解压缩,可搭配-C在特定目录解开;

(-c-t-x不能同时出现在一串命令行中)

-jbzip2支持进行压缩/解压 ,此时文件名最好 *.tar.bz2

-zgzip支持进行压缩/解压 ,此时文件名最好 *.tar.gz

-v:压缩解压缩过程中,将正在处理的文件名显示出来;

-f filename(可以接路径/root/filename.tar.bz2)-f后要接被处理的文件名,建议-f单独写一个参数;

C 目录:解压缩时,在特定目录;

---------------------------------------------------------------------------------------------------------

-p:保留备份数据的原本权限与属性,常用与备份重要的配置文件(如备份/etc目录)

-P(大写):保留绝对路径,即允许备份数据中含有根目录;

简单的使用方法:

压缩:tar -jcv -ffilename.tar.bz2要被解压的文件或目录

查询:tar -jtv -f filename.tar.bz2

解压缩:tar -jxv -f filename.tar.bz2 -C欲解压目录

 

 

仅解开单一文件:

1、先找出文件: tar -jtv -f /root/etc.tar.bz2 | grep 'passwd'

2、解开: tar -jxv -f /tmp/etc.tar.bz2 etc/passwd

 

dd指令

dd可备份完整的分区或磁盘,因为dd可读取磁盘的扇区表面数据

dd if="input file" of="outpur file" bs="block size" count="number"

bs:规划一个block的大小,默认512bytes(一个扇区大小)

Count:多少个bs的意思;

 

0 0
原创粉丝点击