一:tar(可压缩可解压)

  • tar命令是Unix/Linux系统中备份文件的可靠方法,几乎可以工作于任何环境中,它的使用权限是所有用户。但是tar本身只是一个文件打包工具,只有和其他工具组合时才具有压缩/解压文件功能。
  • 使用tar命令压缩文件的格式是:tar  参数[主选项+辅选项]   '文件或目录 '
  • 参数主选项
    • -c 创建新的档案文件。如果用户想备份一个目录或是一些文件,就要选择这个选项。
    • -r 把要存档的文件追加到档案文件的未尾。例如用户已经做好备份文件,又发现还有一个目录或是一些文件忘记备份了,这时可以使用该选项,将忘记的目录或文件追加到备份文件中。
    • -t 列出档案文件的内容,查看已经备份了哪些文件。
    • -u 更新文件。就是说,用新增的文件取代原备份文件,如果在备份文件中找不到要更新的文件,则把它追加到备份文件的最后。
    • -x 从档案文件中释放文件。
  • 参数副选项
    • -b 该选项是为磁带机设定的,其后跟一数字,用来说明区块的大小,系统预设值为20(20×512 bytes)。
    • -f 指定档案文件名或设备名,这个选项通常是必选的,此参数必须放在最后,后面跟被压缩或者解压的文件名称。
    • -k 保存已经存在的文件。例如把某个文件还原,在还原的过程中遇到相同的文件,不会进行覆盖。
    • -m 在还原文件时,把所有文件的修改时间设定为现在。
    • -M 创建多卷的档案文件,以便在几个磁盘中存放。
    • -v 详细报告tar处理的文件信息。如无此选项,tar不报告文件信息。
    • -w 每一步都要求确认。
    • -z 用gzip来压缩/解压缩文件,加上该选项后可以将档案文件进行压缩,但还原时也一定要使用该选项进行解压缩。
  • 使用方法
    • tar命令可以将文件打包,一般打包文件时我们习惯将打包后的文件后缀设置为.tar

      • 打包:tar -cvf  '生成文件名称'  '被打包的文件或者目录名称'

        • eg: tar -cvf  'test.bpm.tar' 'test.bpm',在当前目录下得到文件test.bpm.tar
        • eg: tar -cvf  '/home/test.bpm.tar'  'test.bpm',在/home目录写得到文件test.bpm.tar
      • 解包:tar -xvf  '被解包的文件名称' 
        • eg: tar -xvf  'test.bpm.tar',在当前目录下得到文件test.bpm
        • eg: tar -xvf  'test.bpm.tar'  -C '/home/',在/home目录下得到文件test.bpm,解包到其他路径下一定要使用 -C 参数
    • tar命令可以使用参数-z,以gzip方式将文件压缩或者解压。一般打包文件时我们习惯将打包后的文件后缀设置为.tar.gz
      • 压缩文件:tar -czvf '文件或者目录名称'

        • eg: tar -czvf  'test.bpm.tar.gz' 'test.bpm',在当前目录得到文件test.bpm.tar.gz
        • eg: tar -czvf  '/home/test.bpm.tar.gz'  'test.bpm',在/home目录得到文件test.bpm.tar.gz
      • 解压文件:tar -xzvf  '文件或者目录名称'
        • eg: tar -xzvf  'test.bpm.tar.gz',在当前目录得到文件test.bpm
        • eg: tar -xzvf  'test.bpm.tar.gz' -C  '/home/' ,在home目录得到文件test.bpm
  • 报错提示
    • 打包或者压缩时

      • 报错:谨慎地拒绝创建空归档文件
      • 原因:没有指定打包或者压缩文件后的名称
    • 解包或者解压时
      • 报错:归档中找不到
      • 原因:在指定解包或者解压后文件存放位置时,没有使用 -C 参数,不能够成功指定文件存放位置

二:gzip和gunzip

  • gzip:将文件压缩为后缀为.gz的文件

    • 使用gzip命令压缩文件的格式是:gzip 参数[选项]  '文件或目录 '
    • 参数
      • -d 解开压缩文件;
      • -c 将输出写到标准输出上,并保留原有文件。
      • -r 递归处理,将指定目录下的所有文件及子目录一并处理
      • -f:强行压缩文件。不理会文件名称或硬连接是否存在以及该文件是否为符号连接;
      • -L:显示版本与版权信息;
      • -n:压缩文件时,不保存原来的文件名称及时间戳记;
      • -N:压缩文件时,保存原来的文件名称及时间戳记;
      • -t:测试压缩文件是否正确无误;
      • -<压缩效率>:压缩效率是一个介于1~9的数值,预设值为“6”,指定愈大的数值,压缩效率就会愈高;
        • --best:此参数的效果和指定“-9”参数相同;
        • --fast:此参数的效果和指定“-1”参数相同。
    • 栗子
      • 将test.bpm文件压缩到当前目录

        • 方法一:gzip -crf  'test.bpm' > 'test.bpm.gz' 。得到文件test.bpm.gz
        • 方法二:gzip -rf  'test.bpm' 。得到文件test.bpm.gz
        • 注意,以上两种方法的区别是方法一将文件压缩之后,源文件不会消失,但是却需要自己指定压缩后的文件名称;方法二将文件压缩之后,源文件会消失不见,但是却不需要自己指定压缩后的文件名称,会自动生成后缀为 .gz 的和源文件名称相同的文件
      • 将test.bmp文件压缩到指定目录
        • gzip cf  'test.bpm' > '/home/test.bpm.gz'。得到文件test.bpm.gz
  • gunzip:将后缀为.gz文件解压
    • 使用gzip命令压缩文件的格式是:gzip 参数[选项]  '文件或目录 '
    • 参数同gzip相同
    • 栗子
      • 将test.bpm.gz文件解压到当前目录

        • 方法一:gunzip -crf  'test.bpm.gz' > 'test.bpm'。得到文件test.bpm
        • 方法二:gunzip -rf  'test.bpm.gz' 。得到文件test.bpm
        • 注意,以上两种方法的区别是方法一将文件解压之后,源文件不会消失,但是却需要自己指定解压后的文件名称;方法二将文件解压之后,源文件会消失不见,但是却不需要自己指定解压后的文件名称,会自动解压成和源文件名称相同的文件
      • 将test.bpm.gz文件解压到指定目录
        • gunzip -crf  'test.bpm.gz' > '/home/test.bpm'。得到文件test.bpm
  • gzip 使用参数 -d 时,作用等同于gunzip。也就是当解压.gz文件时,使用 gzip -d 对文件进行解压也是一样的。参数设置也是一样的。

三:zip和unzip

  • 使用zip/unzip命令压缩文件的格式是:zip 参数[选项]  '文件或目录 '
  • zip
    • 参数

      • -c:将解压缩的结果
      • -l:显示压缩文件内所包含的文件
      • -n:解压缩时不要覆盖原有的文件
      • -v:执行是时显示详细的信息
      • -C:压缩文件中的文件名称区分大小写
      • -t:检查压缩文件是否正确
      • -u:与-f参数类似,但是除了更新现有的文件外,也会将压缩文件中的其它文件解压缩到目录中
    • 栗子
      • 将test.bpm文件压缩到当前目录:zip  -rv 'test.bpm.zip' 'test.bpm'
      • 将test.bpm文件压缩到/home指定目录:zip  -rv '/home/test.bpm.zip'  'test.bpm'
  • unzip
    • 参数

      • -d<目录>:指定文件解压缩后所要存储的目录;
    • 栗子
      • 将test.bpm.gz文件解压到当前目录:unzip  'test.bpm.zip'
      • 将test.bpm文件解压到/home指定目录:zip  '/home/test.bpm.zip'  -d '/home'

Linux使用——Linux命令——Linux文件压缩和解压使用记录的更多相关文章

  1. linux常用命令:4文件压缩和解压命令

    文件压缩和解压命令 压缩命令:gzip.tar[-czf].zip.bzip2 解压缩命令:gunzip.tar[-xzf].unzip.bunzip2 1. 命令名称:gzip 命令英文原意:GNU ...

  2. Linux入门到放弃之三《常用命令(帮助命令,文件压缩和解压,关机、重启,加载光盘...)》

    1.获得命令帮助: man命令的用法: 命令:man find ( 获取find命令的帮助文档 ) 2.复制/root/install.log 到/tmp: ( 确认root目录下是否存在instal ...

  3. Ionic.Zip.dll文件压缩和解压

    Ionic.Zip.dll文件压缩和解压 下载地址: http://download.csdn.net/detail/yfz19890410/5578515 1.下载Ionic.Zip.dll组件,添 ...

  4. c#自带压缩类实现的多文件压缩和解压

    用c#自带的System.IO.Compression命名空间下的压缩类实现的多文件压缩和解压功能,缺点是多文件压缩包的解压只能调用自身的解压方法,和现有的压缩软件不兼容.下面的代码没有把多文件的目录 ...

  5. linux和windows之间的文件压缩和解压缩以及^R的问题

    推荐大家使用zip压缩和解压,因为zip一般是linux系统自带: 一.zip和unzip 1. zip压缩 zip -r myfile.zip ./web 将当前目录里的web下的所有文件和文件夹全 ...

  6. java 文件压缩和解压(ZipInputStream, ZipOutputStream)

    最近在看java se 的IO 部分 , 看到 java 的文件的压缩和解压比较有意思,主要用到了两个IO流-ZipInputStream, ZipOutputStream,不仅可以对文件进行压缩,还 ...

  7. .net文件压缩和解压及中文文件夹名称乱码问题

    /**************************注释区域内为引用http://www.cnblogs.com/zhaozhan/archive/2012/05/28/2520701.html的博 ...

  8. 文件压缩和解压 FileStream GZipStream

    using (FileStream reader=new FileStream (@"c:\1.txt",FileMode.Open,FileAccess.Read)) { usi ...

  9. Linux基础------文件打包解包---tar命令,文件压缩解压---命令gzip,vim编辑器创建和编辑正文件,磁盘分区/格式化,软/硬链接

    作业一:1) 将用户信息数据库文件和组信息数据库文件纵向合并为一个文件/1.txt(覆盖) cat /etc/passwd /etc/group > /1.txt2) 将用户信息数据库文件和用户 ...

随机推荐

  1. Mongodb 分组查询例子

    db.tblCard.aggregate([     {         $match: {             "sNo": {                 " ...

  2. 如何使用Apache log4net库与ASP.NET MVC 5日志记录

    在运行软件程序的时候,跟踪和监控日志是一种记录过程的好方法. 简介: 在运行软件程序的时候,跟踪和监控日志是一种记录过程的好方法.尤其在应用程序出错的时候,日志是我们最需要的文件.不管是在web,wi ...

  3. Python二分法查找

    1.1二分前提是有序,,否则不可以2分,2分查找的时间复杂度是O(log n):排序后二分查找到适当的位置插入数值 lst = [37,99,73,48,47,40,40,25,99,51] def ...

  4. 【转】C#中base关键字的几种用法

    base其实最大的使用地方在面相对性开发的多态性上,base可以完成创建派生类实例时调用其基类构造函数或者调用基类上已被其他方法重写的方法.例如: 2.1关于base调用基类构造函数 public c ...

  5. docker exec进程是由谁产生的

    1.问题: 通过docker exec产生的进程bash(5704)看ppid是docker-containe(5564),但是通过ptrace进程号5564没有关于clone的系统调用,就算ptra ...

  6. python装饰器介绍

    """装饰器 定义:本质是函数(器:就是函数的意思),功能:装饰其他函数,就是为其他函数添加附加功能 原则: 1. 不能修改被装饰的函数的源代码 2. 不能修改被装饰的函 ...

  7. 怎样从外网访问内网RESTful API?

    本地部署了RESTful API,只能在局域网内访问,怎样从外网也能访问到本地的RESTful API呢?本文将介绍具体的实现步骤. 准备工作 部署并启动RESTful API服务端 默认部署的RES ...

  8. 每日linux命令学习-rpm命令

    rpm命令 rpm是一款强大的Redhat软件包管理工具,可创建.安装.查询.验证.升级和卸载每个软件包,软件包是存储文件,包括需要安装的文件和名称.版本.说明等报信息. rpm默认支持7种操作模式, ...

  9. Linux下EC20实现ppp拨号(转)

    源: Linux下EC20实现ppp拨号 参考: 4g模块EC20+android6.0系统移植 OK6410开发板调试EC20通信模块 海思3531添加移远EC20 4g模块 将移远通信的EC20驱 ...

  10. PID控制器开发笔记(转)

    源: PID控制器开发笔记