加载中…
正文 字体大小:

Linux压缩及解压命令

(2012-11-12 13:27:16)
标签:

文件名

h2

子目录

压缩包

压缩文件

it

分类: Linux

gzip:压缩为.gz文件

/bin目录下

看到的.gz、.tar.gz文件,都是代表gzip程序压缩的,是GNU组织发展的一种压缩程序。

缺点:仅能压缩一个文件,即使针对子目录压缩,它也是针对子目录里的各个文件压缩,并没有把它们搞成一个包。

gzip [-参数] [文件名]

-9 压出最小文件
-1 以最快时间压缩
-6 如果没有-1,也没有-9,则默认为-6
-v 展示压缩进度
-r 将子目录的文件全部压缩
-d 解压文件(等于执行 gunzip命令)
gzip –d big.gz

例如:

gzip big.bmp
gzip –9 big.bmp
gzip –1 big.bmp

 

gunzip:将.gz解压

/bin目录下

gunzip [-参数] [文件名.gz]

-f 当解压时如果遇到有同名文件,直接覆盖
-v 展示解压进度
-r 将子目录的文件全部解压

 

 

tar:打为.tar包或解开

/bin目录下

注:tar并不是压缩程序,是一个打包程序,因为打包之后的大小跟原来的一样大。

产生.tar文件之后,在压缩,.tar.gz就是这么来的,可以把.tar.gz浓缩为.tgz。

-f 输出到默认设备    
-c 产生新文件 tar –cf new.tar my*.doc  
-r 再增加文件 tar –rf new.tar yusa.doc   把yusa.doc增加到刚刚打的new.tar包中
-u 把更新的打包进去 tar –uf new.tar my3.doc my3.doc文件有更新,重新打入到new.tar包中
-t 列出包文件 tar –tf  new.tar 显示new.tar有哪些文件
-v 展示打包进度    
-x 解包 tar –xf new.tar my*.doc 把new.tar包中的my开头的.doc文件解开
-C 指定解包文件存放目录 tar –zxf new.tar.gz –C /yusa/ 把new.tar.gz文件解压到/yusa/目录下
-z 使用gzip压缩 tar –zcf new.tar.gz my*.doc  
-Z 使用compress压缩 tar –Zcf new.tar.Z my*.doc  

注:如果解压时不允许使用-z参数时,解决方法如下:

zcat new.tar.gz | tar -xv
bzcat new.tar.bz2 | tar -xv

 

compress:压缩为.Z文件

/usr/bin目录下

看到的.Z或.tar.Z的文件,都是用此命令压缩的。

compress [-参数] [文件名]

-v 展示解压进度
-d 解压文件

例如

compress yusa.gif 会产生一个yusa.gif.Z文件
compress –d yusa.gif.Z  

 

uncompress:将.Z解压

/usr/bin目录下

uncompress [-参数] [文件名.Z]

-v 展示解压进度

 

zip:压缩为.zip文件

/usr/bin目录下

zip [-参数] [文件名.zip] [文件名]

-d 删除压缩包中的文件 zip –d new.zip my.doc 如果my.doc文件在new.zip中,则在new.zip包中删除
-g 在压缩包中增加文件 zip –g new.zip yusa.doc 如果new.zip包中不存在yusa.doc文件,则增加进去(grow)
-u 把更新过的文件替换压缩包中的老文件 zip –u new.zip sissi*.doc 如果sissi*.doc文件有更新,则替换压缩包中老文件
-r 递归压缩子目录 zip –u new.zip mydir 如果mydir是一个目录,则把整个目录压缩

例:

zip new1.zip yusa*.doc

 

unzip:解压.zip文件

/usr/bin目录下

unzip [-参数] [文件名.zip] [文件名]

-fo 只解压更新已存在的文件,其它文件不解压(但不询问直接覆盖更新)
-uo 解压更新已存在的文件,并把不存在的文件也解压(但不询问直接覆盖更新)
-o 无论文件是新是旧,一律从压缩文件中解压,并直接覆盖
-f 只解压更新已存在的文件,其它文件不解压(但更新时会一一询问)
-u 解压更新已存在的文件,并把不存在的文件也解压(但更新时会一一询问)
-n 只把不存在的文件解压,已存在的文件无论新旧一律保留原状
-C 不计较大小写的不同,视为相同文件名(默认视为不同)
-L 解压时,一律将文件名转为小写
-l 只列出压缩包里有哪些文件,并不真正解压
-j 不管原来压缩的目录为何,均全部解开与现行目录
-d 后面跟个目录名,可以指定解压到该目录

例:

unzip one.zip a*.doc 把a开头的doc文件解压出来,如果不存在这种文件,则将one.zip全部解压
unzip –d /yusa/ one.zip
unzip –f one.zip –d /yusa/
将one.zip解压到/yusa/目录下

 

bzip2:压缩为.bz2文件

/bin目录下

缺点:只能压缩一个文件,要开打包程序帮忙。

bzip2 [-参数] [文件名]

-9 压出最小文件
-k 产生压缩文件后,仍然保持原有文件(gzip程序实现不了)
-d 解压文件

例:

bzip2 –9 –k my.doc

 

bunzip2:解压.bz2文件

/bin目录下

bunzip2 [-参数] [文件名.bz2]

-v 显示进度
-k 解压后,仍然保持原压缩文件

0

阅读 评论 收藏 转载 喜欢 打印举报
前一篇:Linux帮助命令
  • 评论加载中,请稍候...
发评论

    发评论

    以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

    < 前一篇Linux帮助命令
      

    新浪BLOG意见反馈留言板 电话:4006900000 提示音后按1键(按当地市话标准计费) 欢迎批评指正

    新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

    新浪公司 版权所有