Linux下用户经常需要备份计算机系统中的数据,为了节省存储空间,常常将备份文件进行压缩存储,一般可以节约50-90%的存储空间,本文是对压缩和解压命令的大致总结

.tar.gz 或 .tgz

解压:tar zxvf FileName.tar.gz    或   tar zxvf FileName.tgz

压缩:tar zcvf FileName.tar.gz dirName  或   tar zcvf FileName.tgz FileName

solaris下解压 *.tar.gz可能有些不同,按照以下两步实现解压:

1、gzip -d *.tar.gz

2、tar xvf *.tar

第一步,先把*.tar.gz格式解压成*.tar格式

第二步,直接解压*.tar格式文件,完成解压

.gz

解压1:gunzip FileName.gz

解压2:gzip -d FileName.gz

压缩:gzip FileName

.tar

解包:tar xvf FileName.tar

tar xvf FileName.tar -C DirName(解压到指定文件夹DirName)

打包:tar cvf FileName.tar DirName

.bz2

解压1:bzip2 -d FileName.bz2

解压2:bunzip2 FileName.bz2

压缩: bzip2 -z FileName

.tar.bz2

解压:tar jxvf FileName.tar.bz2

压缩:tar jcvf FileName.tar.bz2 FileName

.bz

解压1:bzip2 -d FileName.bz

解压2:bunzip2 FileName.bz

压缩:未知

.tar.bz

解压:tar jxvf FileName.tar.bz

压缩: tar jcvf FileName.tar.bz FileName

.z

解压:uncompress FileName.Z

压缩:compress FileName

.tar.z

解压:tar zxvf FileName.tar.z

压缩:tar zcvf FileName.tar.z DirName

.zip

解压:unzip FileName.zip

压缩:zip FileName.zip DirName

.rar

解压:rar x FileName.rar

压缩:rar a FileName.rar DirName

解压后请将rar_static拷贝到/usr/bin目录(其他由$PATH环境变量指定的目录也可以):

# cp rar_static /usr/bin/rar

.lha

解压:lha -e FileName.lha

压缩:lha -a FileName.lha FileName

>解压后请将lha拷贝到/usr/bin目录(其他由$PATH环境变量指定的目录也可以):

# cp lha /usr/bin/

.rpm

解包:rpm2cpio FileName.rpm | cpio -div

.deb

解包:ar p FileName.deb data.Tar.gz | tar zxf -

.Tar .tgz .Tar.gz .Tar.Z .Tar.bz .Tar.bz2 .zip .cpio .rpm

.deb .slp .arj .rar .ace .lha .lzh .lzx .lzs .arc .sda .sfx .lnx

.zoo .cab .kar .cpt .pit .sit .sea

解压:sEx x FileName.*

压缩:sEx a FileName.* FileName

sEx只是调用相关程序,本身并无压缩、解压功能,请注意!

解压后请将sEx拷贝到/usr/bin目录(其他由$PATH环境变量指定的目录也可以):

# cp sEx /usr/bin/

其实看帮助是最好的方法,一般各个命令都可以用“--help”参数或者 man command(如:man tar)得到常用使用方法!

tar 命令

tar可以为文件和目录创建档案。

tar最初被用来在磁带上创建档案,现在用户可以在任何设备上创建档案,如软盘。

利用tar,用户可以为某一特定文件创建档案(备份文件),也可以在档案中改变文件,或者向档案中加入新的文件。

利用Tar命令,可以把一大堆的文件和目录全部打包成一个文件,这对于备份文件或将几个文件组合成为一个文件以便于网络传输是非常有用的。

Linux上的Tar是GNU版本的。

语法:tar [主选项+辅选项] 文件或者目录

使用该命令时,主选项是必须要有的,它告诉tar要做什么事情,辅选项是辅助使用的,可以选用。

主选项:

c 创建新的档案文件。如果用户想备份一个目录或是一些文件,就要选择这个选项。

r 把要存档的文件追加到档案文件的未尾。例如用户已经作好备份文件,后发现还有一个目录或文件需要备份追加,这时可以使用该选项。

t 列出档案文件的内容,查看已经备份了哪些文件。

u 更新文件。就是说,用新增的文件取代原备份文件,如果在备份文件中找不到要更新的文件,则把它追加到备份文件的最后。

x 从档案文件中释放文件。

辅助选项:

b 该选项是为磁带机设定的。其后跟一数字,用来说明区块的大小,系统预设值为20(20*512 bytes)。

f 使用档案文件或设备,这个选项通常是必选的。

k 保存已经存在的文件。例如我们把某个文件还原,在还原的过程中,遇到相同的文件,不会进行覆盖。

m 在还原文件时,把所有文件的修改时间设定为现在。

M 创建多卷的档案文件,以便在几个磁盘中存放。

v 详细报告tar处理的文件信息。如无此选项,tar不报告文件信息。

w 每一步都要求确认。

z 用gzip来压缩/解压缩文件 ,加上该选项后可以将档案文件进行压缩,但还原时也一定要使用该选项进行解压缩。

例1:把/home目录下包括它的子目录全部做备份文件,备份文件名为usr.tar。

$tar cvf usr.tar /home

例2:把/home目录下包括它的子目录全部做备份文件,并进行压缩,备份文件名为usr.tar.gz 。

$tarczvfusr.tar.gz /home

例3:把usr.tar.gz这个备份文件还原并解压缩。

$ tarxzvfusr.tar.gz

例4:查看usr.tar备份文件的内容,并以分屏方式显示在显示器上。

$ tar tvf usr.tar | more

要将文件备份到一个特定的设备,只需把设备名作为备份文件名。

例5:用户在/dev/fd0设备的软盘中创建一个备份文件,并将/home 目录中所有的文件都拷贝到备份文件中。

$ tar cf /dev/fd0 /home

要恢复设备磁盘中的文件,可使用xf选项:

$ tar xf /dev/fd0

如果用户备份的文件大小超过设备可用的存贮空间,如软盘,您可以创建一个多卷的tar备份文件。M选项指示tar命令提示您使用一个新的存贮设备,当使用M选项向一个软驱进行存档时,tar命令在一张软盘已满的时候会提醒您再放入一张新的软盘。这样您就可以把tar档案存入几张磁盘中。

$ tarcMf/dev/fd0 /home

要恢复几张盘中的档案,只要将第一张放入软驱,然后输入有x和M选项的tar命令。在必要时您会被提醒放入另外一张软盘。

$ tarxMf/dev/fd0

gzip 命令

减少文件大小有两个明显的好处,一是可以减少存储空间,二是通过网络传输文件时,可以减少传输的时间。

gzip是在Linux系统中经常使用的一个对文件进行压缩和解压缩的命令,既方便又好用。

语法:gzip [选项] 压缩(解压缩)的文件名

各选项的含义:

-c 将输出写到标准输出上,并保留原有文件。

-d 将压缩文件解压。

-l 对每个压缩文件,显示下列字段:

压缩文件的大小(compressed)

未压缩文件的大小(uncompressed)

压缩比(ratio)

未压缩文件的名字(uncompressed_name)

-r 递归式地查找指定目录并压缩其中的所有文件或者是解压缩。

-t 测试,检查压缩文件是否完整。

-v 对每一个压缩和解压的文件,显示文件名和压缩比。

-num 用指定的数字num调整压缩的速度,-1(--fast)表示最快压缩方法(低压缩比),-9(--best)表示最慢压缩方法(高压缩比)。系统缺省值为6。

假设一个目录/home下有文件123  aaa  abc

例1:把/home目录下的每个文件压缩成.gz文件。

$ cd /home

$ gzip *

$ ls

123.gz  aaa.gz  abc.gz

例2:把例1中每个压缩的文件解压,并列出详细的信息。

$ gzip -dv *

123.gz: -50.0% -- replaced with 123

aaa.gz: -50.0% -- replaced with aaa

abc.gz: -50.0% -- replaced with abc

$ ls

123  aaa  abc

例3:详细显示例1中每个压缩的文件的信息,并不解压。

$ gzip -l *

compressed        uncompressed  ratio uncompressed_name

28                   4 -50.0% 123

28                   4 -50.0% aaa

28                   4 -50.0% abc

84                  12 -416.7% (totals)

$ ls

123.gz  aaa.gz  abc.gz

例4:压缩一个tar备份文件,如usr.tar,此时压缩文件的扩展名为.tar.gz

$ gzip usr.tar

$ ls

usr.tar.gz

unzip 命令

用MS Windows下的压缩软件winzip压缩的文件如何在Linux系统下展开呢?可以用unzip命令,该命令用于解扩展名为.zip的压缩文件。

语法:unzip [选项] 压缩文件名.zip

各选项的含义分别为:

-x 文件列表 解压缩文件,但不包括指定的file文件。

-v 查看压缩文件目录,但不解压。

-t 测试文件有无损坏,但不解压。

-d 目录 把压缩文件解到指定目录下。

-z 只显示压缩文件的注解。

-n 不覆盖已经存在的文件。

-o 覆盖已存在的文件且不要求用户确认。

-j 不重建文档的目录结构,把所有文件解压到同一目录下。

例1:将压缩文件text.zip在当前目录下解压缩。

$ unzip text.zip

例2:将压缩文件text.zip在指定目录/tmp下解压缩,如果已有相同的文件存在,要求unzip命令不覆盖原先的文件。

$ unzip -n text.zip -d /tmp

例3:查看压缩文件目录,但不解压。

$ unzip -v text.zip

zgrep 命令(很有用)

这个命令的功能是在压缩文件中寻找匹配的正则表达式,用法和grep命令一样,只不过操作的对象是压缩文件。

如果用户想看看在某个压缩文件中有没有某一句话,便可用zgrep命令,查询日志很有用。

例如:zgrep -iE "blog|proxy|site"   mimvp_blog.tar.gz

参考推荐:

linux 压缩文件夹bz,Linux下tar、bz、gz等压缩包的压缩和解压相关推荐

  1. 如何删除linux模板下文件,linux删除文件夹(linux删除文件夹命令是什么)

    linux删除文件夹(linux删除文件夹命令是什么) 怎么将linux删除文件夹? Linux系统通常由命令来操作.对于如何删除Linux文件夹的问题,我们已经列出了操作的步骤和方法来帮助您解决如何 ...

  2. linux复制文件夹 实例,linux复制文件夹与文件实例介绍linux操作系统 -电脑资料

    本文章来介绍一下关于linux复制文件夹与文件的一些基础用法,有需要学习的朋友可参考一下本文章, CP命令 格式: CP [选项] 源文件或目录  目的文件或目录 选项说明:-b 同名,备分原来的文件 ...

  3. linux 压缩文件夹格式,Linux下常见文件格式的压缩、解压小结

    Linux下常见文件格式的压缩.解压小结 .tar 解包: tar xvf FileName.tar 打包:tar cvf FileName.tar DirName (注:tar是打包,不是压缩!) ...

  4. linux下如何压缩文件夹加密,linux下的文件/文件夹压缩加密方法

    1. 文件//文件夹加密 zip -e linuxzgf.zip linuxzgf 即可出现输入密码的提示,输入2次密码. 此文件即被加密解压时候是需要密码的 文件夹加密: zip -re linux ...

  5. linux复制压缩文件夹,[操作系统]linux中文件或者文件夹的基本操作(复制,移动,删除,查找,压缩)...

    [操作系统]linux中文件或者文件夹的基本操作(复制,移动,删除,查找,压缩) 0 2015-12-28 00:00:15 linux 文件(文件夹)的创建,复制,移动,重命名,删除基本命令 复制文 ...

  6. linux系统日志文件夹加密,linux系统环境下,对文件进行加密

    引用自:http://blog.chinaunix.net/u/19895/showart_232861.html Linux关于文件加密的两种方法和详解: 一.用GnuPG加密文件. GnuPG软件 ...

  7. linux修改文件夹磁盘,linux下修改磁盘卷标

    一开始用e2label忘记是nfts分区了.老是提示错误.可以采用: 卸载分区.修改 /media/下的文件夹. 修改/etc/fstab 文件里的挂载描述. fedora8中的分区不再是挂载到/mn ...

  8. linux打开文件夹安装,Linux Supervisor的安装与使用入门

    在linux或者unix操作系统中,守护进程(Daemon)是一种运行在后台的特殊进程,它独立于控制终端并且周期性的执行某种任务或等待处理某些发生的事件.由于在linux中,每个系统与用户进行交流的界 ...

  9. linux扩充文件夹容量,Linux扩充磁盘空间 【附查看磁盘命令】

    今天手里一台raksmart要重做一下系统,但是做完以后发现磁盘空间只有2G-顿时感觉整个人不好了.于是乎练习客服处理,RAKSmart机器速度虽然一般,但是客服回复是真快,只需要一段命令就可以完美解 ...

  10. linux find 文件夹类型,Linux find 强大的文件查找工具

    "一切皆文件"是 Linux的哲学思想之一, 这条命令可以统计当前linux系统中有多少文件ls -R / |wc -l &建议放在后台执行,因为你的系统文件很多则会消耗很 ...

最新文章

  1. pytorch基础函数学习
  2. java获取注解信息_java 自定义注解,获取注解信息
  3. linux添加源 红帽,红帽yum源改centos的源的方法
  4. JavaScript 音频处理库 pico.js
  5. x86异常处理与中断机制(1)概述中断的来源和处理方式
  6. 关于重构之Switch的处理【二】
  7. python哪本书好看_python入门看哪本书好
  8. ThinkingInJava对this关键字的介绍
  9. python datetime
  10. 根据Uri获取文件的绝对路径
  11. 最小方差问题---------------给你出道题
  12. (转)HDOJ 4006 The kth great number(优先队列)
  13. Python新手需要掌握的知识点
  14. 编程python视频教程_Python高级编程实战系列视频课程
  15. 一些很好的python自动化办公方案(待整理到readthedocs中)
  16. 连载]第四讲 测量准确度、重复性、复现性及标准偏差
  17. 如何用公式编辑器打半中括号?
  18. 减半技术实现求a的n次幂
  19. Win10打开文件夹闪退怎么解决
  20. 解决mmdetection训练过程loss为nan的问题

热门文章

  1. SQL Server 2005 企业版没有 Microsoft SQL Server Management
  2. helm 部署 heapster 组件
  3. python psutil替代_python psutil
  4. MySQL基础之DDL语句
  5. 手机连上无线却手机不显示连接服务器,手机连接上wifi却上不了网该怎么处理...
  6. 微信5.0留给人们的是想象空间
  7. [win转mac]-mac安装autojump
  8. 数学建模-Topsis模型(Matlab)
  9. 时间复杂度主定理分析及练习
  10. keycode键盘 按键 - 键码 对应表