码迷,mamicode.com
首页 > 系统相关 > 详细

linux_压缩文件及目录

时间:2016-06-14 06:32:02      阅读:230      评论:0      收藏:0      [点我收藏+]

标签:linux_压缩文件及目录

压缩解压缩命令:

压缩格式:gz,bz2,xz,zip,z

压缩算法:算法不同,压缩比也会不同:

compress::FILENAME.Z

uncompress

 

目前最流行的压缩工具:

gzip: .gz  只能压缩文件

gzip / PATH/TO/SOMEFILE/  压缩完后删除源文件

-d 也表示解压缩

-#[1-9],指定压缩比,默认是6

gunzip:

     gunzip /PATH/TO/SOMEFILE.gz 解压完后会删除源文件

zcat/PATH/TO/SOMEFILE.gz不解压的情况,查看文本文件内容

 

bzip2: .bz2 gzip有更大压缩比的压缩工具,使用格式近似

  bzip2 /PATH/TO/SOMEFILE  压缩后也会删除源文件

      -d解压缩

      -#[1-9],默认

      -k保留源文件

[root@localhosttmp]# bzip2 -d -k fstab.bz2

[root@localhosttmp]# ls

abc  b2 fstab  fstab.bz2

 

bunzip2  /PATH/TO/SOMEFILE 解压缩

bzcat,在不解压缩的情况下,查看bzip2的文本类压缩文件

 

xz: .xz

 xz/PATH/TO/SOMEFILE  压缩后也会删除源文件

     –d解压

     -# [1-9],指定压缩比,默认6

     -k 压缩时也能保留源文件

unxz 解压缩

xzdec

xzcat  在不解压缩的情况下,查看xz的文本类压缩文件

 

zip:压缩工具,压缩比不大。可以压缩目录,可以将多个文件压缩到一起,压缩后不删除源文件

zipFILENAME.zip  FILE1 FILE2…

unzip FILENAME.zip 解压缩后不删除源文件

archive:归档,归档本身并不意味着压缩

 

tar:只归档不压缩(归档后不删除源文件)

  -c 创建归档文件

  -f FILE.tar操作的归档文件(必须制定归档名)

[root@localhosttmp]# tar  -cf skel.tar skel

[root@localhosttmp]# ls -lh

总用量 40K

-rw-r--r--. 1 rootroot  10K 6  11 15:28skel.tar

 -x 还原归档,不删除归档文件

[root@localhosttmp]# tar -xf skel.tar

[root@localhosttmp]# ls

fstab.xz  skel skel.tar

--xattrs 在归档的同时,保留文件的扩展属性信息

-t 不展开归档查看归档了哪些文件

[root@localhosttmp]# tar -cf V.tar a b c d

[root@localhosttmp]# tar -tf V.tar

a/

b/

c/

d/

 

[root@localhosttmp]# xz V.tar (既归档又压缩)

[root@localhosttmp]# ls -lh

总用量 48K

-rw-r--r--. 1 rootroot  184 6  11 15:38V.tar.xz

-zcf: 归档并调用gzip压缩

[root@localhosttmp]# tar -zcf abcd.tar.gz a b c d

[root@localhosttmp]# ls

a  abcd.tar.gz b  c  d

-xcf调用gzip解压缩并展开归档

 

-jcf调用bzip2

[root@localhosttmp]# tar -jcf abcd.tar.bz2 a b c d

[root@localhosttmp]# ls

a  abcd.tar.bz2 b  c  d

-jxf解压缩

 

 

-Jcf调用xz

[root@localhosttmp]# tar -Jxf abcd.tar.xz a b c d

[root@localhosttmp]# ls

a  abcd.tar.xz b  c  d

-Jxf解压缩

很多时候解压缩的时候展开的-J或者-j或者-z可以不写

tar -ztfabcd.tar.gz 不展开直接看里面的内容,同样这里的z或者j或者J可以省略

 

 

cpio :归档工具

[root@localhosttmp]# file /boot/initramfs-2.6.32-504.el6.i686.img  /boot/initramfs-2.6.32-504.el6.i686.img: gzipcompressed data, from Unix, last modified: Mon Jun  6 17:35:04 2016, max compression

[root@localhosttmp]# cp /boot/initramfs-2.6.32-504.el6.i686.img  /tmp  复制这个压缩文件到/tmp

 

[root@localhosttmp]# mv initramfs-2.6.32-504.el6.i686.img initramfs-2.6.32-504.el6.i686.img.gz  

[root@localhosttmp]# gzip -d initramfs-2.6.32-504.el6.i686.img.gz  解压缩

[root@localhosttmp]# ls

a  abcd.tar.gz b  c  d initramfs-2.6.32-504.el6.i686.img

[root@localhosttmp]# file initramfs-2.6.32-504.el6.i686.img  查看文件类型cpio归档的文件

initramfs-2.6.32-504.el6.i686.img:ASCII cpio archive (SVR4 with no CRC)

练习:写一个脚本

从键盘让用户输入几个文件名,脚本能够将此几个文件归档并压缩成一个文件:

 

#!/bin/bash

read -p "Threefiles:" FILE1 FILE2 FILE3

read -p"Destination:" DEST

read -p"Compress[gzip|bzip2|xz]:" COMP

case $COMP in

xz)

tar -Jcf${DEST}.tar.xz $FILE1 $FILE2 $FILE3

;;

gzip)

tar -zcf${DEST}.tar.gz $FILE1 $FILE2 $FILE3

;;

bzip2)

tar -jcf${DEST}.tar.bz2 $FILE1 $FILE2 $FILE3

;;

*)

echo"Unknown."

exit 2

;;

esac


本文出自 “linux运维” 博客,谢绝转载!

linux_压缩文件及目录

标签:linux_压缩文件及目录

原文地址:http://coolcl.blog.51cto.com/4514424/1788899

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!