linux常见的压缩命令
㈠ 压缩技术的原理:
--原理一
由于1byte=8bit,所以每个byte当中会有8个内存单元,而每个内存单元可以是0,1。当我们记录数字1时,有7个bit应该是“空的”。不过,为了满足目前我们的OS数据的访问,
所以就会将数据转为byte的形态来记录。有些压缩技术就是把这部分空间给“揪”出来,让文件占用的空间变小。
--原理二
将重复的数据进行统计记录,譬如,你的数据有100个1,那么压缩技术会记录“100个1”而不是真的有100个1的位存在。
www.zhishiwu.com
㈡ 各种压缩命令简介
Ⅰ gzip
语法:
gzip [-dv] 文件名
参数:
-d:解压缩的参数
-v:显示压缩比
例子:
[plain]
[root@localhost Desktop]# gzip show_space.sql
[root@localhost Desktop]# gzip -d show_space.sql.gz
Ⅱ bzip2
语法:
bzip2 [-dkzv] 文件名
参数:
-d:解压缩参数
-k:保留源文件
-z:压缩参数
-v:显示压缩比
例子:
[plain]
[root@localhost Desktop]# bzip2 -z show_space.sql
[root@localhost Desktop]# bzip2 -d show_space.sql.bz2
[root@localhost Desktop]# bzip2 -zk show_space.sql
www.zhishiwu.com
Ⅲ tar
tar打包出来的文件有无进行压缩所得到的文件称谓有别。
如:tar -cv -f file.tar ,这个文件我们称呼tarfile
如:tar -jcv -f file.tar.bz2,这个文件我们称呼tarball(tar球)
语法:
压缩:tar -jcv -f filename.tar.bz2 要被压缩的文件或目录名称
查询:tar -jtv -f filename.tar.bz2
解压缩:tar -jxv -f filename.tar.bz2 -C 欲解压缩的目录
如果是.gz,则把j改为z即可
www.zhishiwu.com
例子:
[plain]
[root@localhost Desktop]# tar -jcv -f think.tar.bz2 show_space.sql
show_space.sql
[root@localhost Desktop]# tar -jxv -f think.tar.bz2 -C /root/Desktop
show_space.sql
Ⅳ cpio
cipo和数据流重定向相关
语法:
备份:cpio -ovcB > [file|device]
还原:cpio -ivcdu < [file|device]
例子:
[plain]
[root@localhost Desktop]# find | cpio -ovcB > /home/oracle/desktop.cpio
[root@localhost Desktop]# cpio -idvc /home/think < /home/oracle/desktop.cpio