十三、文件/目录-压缩打包

king's blog

linux经常遇到文件很大,这时我们需要将文件进行压缩保存,以便节约空间。同样,也会遇到查看压缩文件,这时需要解压缩文件,本节我们聊聊linux下文件/目录的压缩和解压缩。

一、压缩原理

基本有以下两种方式
1、将空余的空间压缩释放出来,比如用二进制存储1(1个字节,10000000),可以将后面的7个0释放出来;
2、比如有100(00前有100个1),记录的时候不是真正写成111.,而是写成100个1,将多余的空间释放出来;

二、压缩打包

通常使用gzip,bzip2进行压缩,但压缩后会是一个个的压缩包,很分散,故开发了tar命令,将分散的压缩包进行打包。

1、gzip

gzip(压缩成*.gz),只是将单个文件压缩成gz包

常用命令如下:
压缩:
gzip file —>代表压缩file文件,压缩之后生成file.gz文件,并把file删除

解压:
gzip -d file.gz —>代表解压file.gz,解压后生成file文件
gunzip file.gz —>代表解压file.gz,解压后生成file文件

查看gz压缩包:
zcat file.gz

2、bzip2

bzip2是后面才推出的命令,用于取代gzip命令。
bzip2(压缩成*.bz2),只是将单个文件压缩成bz2包

压缩:
bzip2 file —>代表压缩file文件,压缩之后生成file.gz2文件,file会被删除(如果想保留file文件,可加上参数-k)

解压:
bzip2 -d file.gz2 —>代表解压file.gz,解压后生成file文件,但file.gz会保留

查看bz2压缩包:
bzcat file.gz2

3、tar

tar -zc -f a.tar.gz a (通过gzip程序将a目录压缩打包成a.tar.gz)
tar -jc -f a.tar.bz2 a (通过bzip2程序将a目录压缩打包成a.tar.bz2)
tar -zx -f a.tar.gz (将gzip压缩的a.tar.gz解压缩)
tar -jx -f b.tar.bz2 (将bzip2压缩的b.tar.bz2解压缩)

三、例子

tar
tar
tar

Tags:
文 / 甲乙丙丁
LEAVE A REPLY

loading