精华内容
下载资源
问答
  • 行业分类-物理装置-压缩文件处理方法、装置、存储介质、终端以及服务器.zip
  • 可以利用该工具对JPEG2000压缩的DICOM文件进行解压缩,另外一个功能就是对一个文件夹内的不同序列DICOM文件按照序列进行分类分类文件目录结构为:病人--study-serial
  • 详解Python 解压缩文件

    2020-12-31 17:12:08
    zipfile模块及相关方法介绍: 1 压缩 1.1 创建zipfile对象 zipfile.ZipFile(file, mode='r', compression=0, allowZip64=True,...1.2 添加压缩文件 zipobj.write(self, filename, arcname=None, compress_type=None
  • /* * 遍历生成的excel文件,进行压缩,可以自己写入要压缩文件路径加文件名*/ File srcfile[] = new File[fileNames.size()]; for (int j = 0, n = fileNames.size(); j ; j++) { srcfile[j] = new Fi
     /* * 遍历生成的excel文件,进行压缩,可以自己写入要压缩的文件路径加文件名*/
                File srcfile[] = new File[fileNames.size()];
                for (int j = 0, n = fileNames.size(); j < n; j++) {
                    srcfile[j] = new File(fileNames.get(j));
                }
    <span style="white-space:pre">	</span>    File zip = new File(path + "/resources/excelzip/" + title + ".zip");//压缩文件存放的路径和名称
                ZipFiles(srcfile, zip);
    
    
    
    /**
         * 压缩
         * @param srcfile 产生的所以excel 文件路径+文件名
         * @param zipfile 压缩到哪里
         */
        
    private static void ZipFiles(File[] srcfile, File zipfile) {
            byte[] buf = new byte[1024];
            try {
                ZipOutputStream out = new ZipOutputStream(new FileOutputStream(zipfile));
                for (int i = 0; i < srcfile.length; i++) {
                    FileInputStream in = new FileInputStream(srcfile[i]);
                    out.putNextEntry(new ZipEntry(srcfile[i].getName()));
                    int len;
                    while ((len = in.read(buf)) > 0) {
                        out.write(buf, 0, len);
                    }
                    out.closeEntry();
                    in.close();
                }
                out.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }

    展开全文
  • 文件分类管理工具

    2017-08-27 18:24:37
    正则表达式:可以通过编辑正则表达式,精确文件分类 拖放:处理文件和文件夹只需在目标拖放 过滤文件和文件夹:按名称,目录,大小,日期,属性,内容或正则表达式 文件夹监控:处理文件和文件夹自动监测定义的目录 ...
  • 行业分类-物理装置-一种文件压缩方法、装置、存储介质及终端设备.zip
  • 行业分类-嵌入式设备-一种压缩和引导嵌入式操作系统镜像文件的方法及装置.zip
  • 可以针对一个目录下面所有文件(不包含子文件夹)进行压缩压缩后的文件名称按照YYYY-MM-DD命名(根据文件最后修改时间来分类),适合大量文件分类压缩,以便节省空间. 【需要对Test目录下面的三个文件修改相应的...
  • python文件压缩与解压缩

    千次阅读 2019-04-11 10:13:44
    1 压缩 1.1 创建zipfile对象 zipfile.ZipFile(file, mode='r', compression=0, allowZip64=True, compresslevel=None) 创建Zipfile对象,主要参数: 1>file压缩包名称; 2>mode:读'r'或者写'w'模式; 3&...

    1 压缩

    1.1 创建zipfile对象

    zipfile.ZipFile(file, mode='r', compression=0, allowZip64=True, compresslevel=None)

    创建Zipfile对象,主要参数:

    1>file压缩包名称;
    2>mode:读'r'或者写'w'模式;
    3>compression:设置压缩格式;
    4>compresslevel:压缩等级;

    压缩格式分类:

    格式说明压缩级别

    ZIP_STORED

    不压缩

    无效

    ZIP_DEFLATED

    需要zlib支持

    0~9

    ZIP_BZIP2

    需要bz2支持

    0~9

    ZIP_LZMA

    需要lzma支持

    无效

    1.2 添加压缩文件

    zipobj.write(self, filename, arcname=None, compress_type=None, compresslevel=None)

    参数说明:

    1>fiename:添加文件路径;
    2>arcname:归档文件路径与名称;

    1.3 添加压缩数据

    zipobj.writestr(zinfo_or_arcname, data, compress_type=None, compresslevel=None)

    参数说明:

    1>zinfo_or_arcname:归档文件名称;
    2>data:压缩数据str或者byte,如果数据为str,需要先进行Utf-8编码;

    1.4 关闭

    关闭压缩文件:

    zipobj.close()

    1.5 一个例子:

    压缩目录如下:

    代码实现:

    import zipfile
    logdir = '/home/linux/logs'
    zipname = '/home/linux/logs.zip'
    #创建zip对象,
    fzip = zipfile.ZipFile(zipname, 'w', zipfile.ZIP_DEFLATED)
    #遍历要压缩目录
    flist = os.listdir(logdir)
    for name in flist:
    fpath = os.path.join(logdir, name)
    #写入要压缩文件
    fzip.write(fpath)
    #关闭
    fzip.close()

    进入目录解压,文件路径如下:


    可以看到,我们将整个目录添加到压缩文件中,其实我们更想做的是logs/*.log;
    对代码进行修改:

    logdir = '/home/linux/logs'
    zipname = '/home/linux/logs.zip'
    import zipfile
    #创建zip对象,
    fzip = zipfile.ZipFile(zipname, 'w', zipfile.ZIP_DEFLATED)
    #遍历要压缩目录
    flist = os.listdir(logdir)
    #获取压缩目录名称
    basename = os.path.basename(logdir)
    for name in flist:
    fpath = os.path.join(logdir, name)
    arcname = os.path.join(basename, name)
    #写入要压缩文件,并添加归档文件名称
    fzip.write(fpath, arcname=arcname)
    #关闭
    fzip.close()

    压缩之后,解压缩内容:


    这个才是我们想要的。

    2.获取压缩包信息

    打开压缩包:
    frzip = zipfile.ZipFile(zipname, 'r', zipfile.ZIP_DEFLATED):只读方式打开;

    frzip.printdir(),显示压缩包文件信息

    File Name Modified Size
    logs/1003.log                                  2019-04-09 10:00:10 17
    logs/1001.log                                  2019-04-09 10:00:06 17
    logs/1004.log                                  2019-04-09 10:00:12 17
    logs/1002.log                                  2019-04-09 10:00:08 17
    logs/1000.log                                  2019-04-09 10:00:04 17

    frzip.filelist:记录压缩包文件信息,与printdir类似,内容如下:

    [<ZipInfo filename='logs/1003.log' compress_type=deflate filemode='-rw-r--r--' file_size=17 compress_size=17>,
    <ZipInfo filename='logs/1001.log' compress_type=deflate filemode='-rw-r--r--' file_size=17 compress_size=17>,
    <ZipInfo filename='logs/1004.log' compress_type=deflate filemode='-rw-r--r--' file_size=17 compress_size=17>,
    <ZipInfo filename='logs/1002.log' compress_type=deflate filemode='-rw-r--r--' file_size=17 compress_size=17>,
    <ZipInfo filename='logs/1000.log' compress_type=deflate filemode='-rw-r--r--' file_size=17 compress_size=17>]

    frzip.getinfo(name):获取指定arcname的信息:

    frzip.getinfo('logs/1003.log')
    #输出结果:
    <ZipInfo filename='logs/1003.log' compress_type=deflate filemode='-rw-r--r--' file_size=17 compress_size=17>

    frzip.namelist():获取压缩文件列表

    ['logs/1003.log',
    'logs/1001.log',
    'logs/1004.log',
    'logs/1002.log',
    'logs/1000.log']

    3 解压压缩包

    frzip.extract(member, path=None, pwd=None):解压缩一个文件到指定目录;
    参数:
    member:压缩包中文件;
    path:解压缩到指定目录,默认解压到当前目录;

    frzip.extractall(path=None, members=None, pwd=None):解压缩多个文件到指定目录;
    参数:
    path:指定的解压目录;
    members:指定解压文件,默认解压全部;

    解压指定文件到指定目录:

    #可以自己定义路径
    zipname = '/home/linux/logs.zip'
    extractpath = '/home/linux/1'
    #注意压缩格式选择
    frzip = zipfile.ZipFile(zipname, 'r', zipfile.ZIP_DEFLATED)
    extractfile = frzip.namelist()
    if len(extractfile):
    extname = extractfile[0]
        print('extract file:', extname)
    frzip.extract(extractfile[0], extractpath)
    frzip.close()

    输出结果:extract file: logs/1003.log,在extractpath目录下有log文件;

    使用frzip.extractall将所有文件解压到指定目录:

    #可以自己定义路径
    zipname = '/home/linux/logs.zip'
    extractpath = '/home/linux/1'
    #注意压缩格式选择
    frzip = zipfile.ZipFile(zipname, 'r', zipfile.ZIP_DEFLATED)
    #将所有文件加压缩到指定目录
    frzip.extractall(extractpath)
    frzip.close()

    除了zipfile还有其它模块:
    import gzip;
    import tarfile;

    展开全文
  • 为解决现有的HBase数据压缩策略选择方法未考虑数据的冷热性,以及在选择过程中存在片面性和不可靠性的缺陷,提出了基于HBase数据分类压缩策略选择方法。依据数据文件的访问频度将HBase数据划分为冷热数据,并限定...
  • DropIt_是一款自动给文件分类整理的小工具,它能够按照设定的协议自动帮助你整理文件/文件夹。可设置处理协议,如将所有扩展名为JPG的文件自动归类(移动、复制、压缩、删除等等)到目标文件夹。偏爱的协议是如果多个...
  • 文件压缩类型总结

    千次阅读 2013-08-20 16:02:26
    ZIP应该算是最常见的压缩文件格式了,你甚至不需要单独为它安装一个压缩或者解压缩软件,因为我们使用的Windows系统以及集成了对ZIP压缩格式的支持。 经历过DOS时代的朋友可能还记得ARJ格式,它基本就是DOS...
    1.ZIP 
    

    ZIP应该算是最常见的压缩文件格式了,你甚至不需要单独为它安装一个压缩或者解压缩软件,因为我们使用的Windows系统以及集成了对ZIP压缩格式的支持。

    经历过DOS时代的朋友可能还记得ARJ格式,它基本就是DOS时代ZIP,直到ZIP的出现,以更高的压缩效率取代了ARJ,成为了大家的首选。现在的大多数操作系统都会集成对ZIP文件的支持,而所有的压缩软件也都会提供对ZIP文件的支持,这些足以体现出ZIP格式的地位。

    ZIP时代最出名的压缩软件就要数WinZIP了,它几乎是当时每台电脑都必备的软件。直到Windows系统开始集成了对ZIP文件的支持,以及后起新秀RAR格式的出现,使得WinZIP不再是那么的必要,才让它逐渐退出了大家的视线。

    2. RAR

    虽然ZIP在压缩文件格式中地位很高,但现在相当多的下载网站都选择了用RAR格式来压缩他们的文件,最根本的原因就在于RAR格式的文件压缩率比ZIP更高。

    同样的文件使用RAR格式进行压缩后得到的大小通常都会比使用ZIP压缩后更小,而我们对文件进行压缩的主要目的就是要减小文件大小以便于网络传输,正巧RAR格式又出现在网络刚刚开始普及的时候,所以RAR逐渐取代ZIP的地位也就是情理之中的事了。

    对RAR文件进行压缩或者解压缩,首选的软件当然是WinRAR,与之前的WinZIP一样,它几乎也是现在每台电脑都必装的软件。不过需要提醒大家的是,作为商业软件,WinRAR只允许用户进行30天的免费试用,虽然过期后软件仍然能够正常工作,但就已经不再合法了。

    3.7Z

    作为压缩格式的后起新秀,7Z有着比RAR更高的压缩率,能够将文件压缩的更加小巧。不过因为RAR格式已经高度普及,又没有网络普及的“天时”相助,7Z想要取代RAR现在的地位还是相当不容易的。

    与之前两种格式一样,7Z也有着专门支持它的软件:7-zip。使用7-zip可以解压缩RAR格式的压缩文件,而WinRAR也同样可以解压缩7Z格式的压缩文件。

    大概因为直接使用现有的WinRAR就可以处理网络上下载到的7Z格式文件,而要将文件压缩成7Z格式的话却需要额外安装7-zip,所以也间接的妨碍了7Z格式的普及吧。WinZIP当年就是因为没有及时的提供对RAR格式的支持而被WinRAR钻了空子。

    4.CAB

    CAB是微软的一种安装文件压缩格式,主要应用于软件的安装程序中。因为涉及到安装程序,所以CAB文件中包含的文件通常都不是简单的直接压缩,而是对文件名等都进行了处理,所以虽然可以对其直接解压缩,但解压后得到的文件通常都无法直接使用。

    和ZIP一样,Windows系统自身就可以打开CAB格式的文件,而几乎所有压缩软件也都可以对CAB文件进行解压。

    5.ISO

    很多朋友都认为ISO是一种压缩格式,这源于WinRAR添加了对ISO格式“解压”的支持。而实际上,ISO并不是压缩格式,它之中所包含的文件也并没有经过压缩。ISO只是一种光盘的镜像格式,完全复制并保存了光盘上的内容而已。所谓的对ISO“解压”的过程,不过就是对ISO内文件的提取过程。

    最后,我还想再为大家单独介绍一个软件:WinMount。

    我们解压缩一个文件,就必然会多占用一些磁盘空间,因为磁盘上同时存在了压缩文件和解压后的文件。而WinMount的特点就是能够将压缩文件以类似虚拟光驱的方式挂接为一个虚拟磁盘供我们使用,因为所有的操作都是在内存中进行的,并没有实际执行任何的解压缩操作,所以不会占用额外的磁盘空间。这对于某些朋友来说,可能还是会很有些帮助的。

    然而在Linux下压缩又比较特别,Linux下有相当多的压缩命令,初学的我们开始总是摸不清头脑,我们知道在Linux下的后缀名是没有什么很特殊的意义的,不过,为了方便记忆,针对这些压缩命令所做出来的压缩文件,还是会有一些特殊的命名方式,Linux下常见的压缩文件有*.tar,
    *.tar.gz, *.tgz, *.gz, *.Z, *.bz2等。
    ---------------------------------------------------
    1. .tar
      解包: tar xvf FileName.tar
      打包:tar cvf FileName.tar DirName
      (注:tar是打包,不是压缩!)
      ---------------------------------------------
    2.  .gz
      解压1:gunzip FileName.gz
      解压2:gzip -d FileName.gz
      压缩:gzip FileName
      .tar.gz 和 .tgz
      解压:tar zxvf FileName.tar.gz
      压缩:tar zcvf FileName.tar.gz DirName
      ---------------------------------------------
    3.  .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 DirName
      ---------------------------------------------
    4.  .bz
      解压1:bzip2 -d FileName.bz
      解压2:bunzip2 FileName.bz
      压缩:未知
      .tar.bz
      解压:tar jxvf FileName.tar.bz
      压缩:未知
      ---------------------------------------------
    5.  .Z
      解压:uncompress FileName.Z
      压缩:compress FileName
      .tar.Z
      解压:tar Zxvf FileName.tar.Z
      压缩:tar Zcvf FileName.tar.Z DirName
      ---------------------------------------------
    6.  .zip
      解压:unzip FileName.zip
      压缩:zip FileName.zip DirName
      ---------------------------------------------
    7.  .rar
      解压:rar a FileName.rar
      压缩:r ar e FileName.rar
      
      rar请到:http://www.rarsoft.com/download.htm 下载!
      解压后请将rar_static拷贝到/usr/bin目录(其他由$PATH环境变量指定的目录也可以):
      # cp rar_static /usr/bin/rar
      ---------------------------------------------
    8.  .lha
      解压:lha -e FileName.lha
      压缩:lha -a FileName.lha FileName
      
      lha请到:http://www.infor.kanazawa-it.ac.jp/~ishii/lhaunix/下载!
      >解压后请将lha拷贝到/usr/bin目录(其他由$PATH环境变量指定的目录也可以):
      # cp lha /usr/bin/
      ---------------------------------------------
    9. .rpm
      解包:rpm2cpio FileName.rpm | cpio -div
      ---------------------------------------------
      .deb
      解包:ar p FileName.deb data.tar.gz | tar zxf -
    用户经常需要备份计算机系统中的数据,为了节省存储空间,常常将备份文件进行压缩。


    下面分别介绍备份与压缩的命令。
      
    1.  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 。
      
      $ tar czvf usr.tar.gz /home
      
      例3:把usr.tar.gz这个备份文件还原并解压缩。
      
      $ tar xzvf usr.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档案存入几张磁盘中。
      
      $ tar cMf /dev/fd0 /home
      
      要恢复几张盘中的档案,只要将第一张放入软驱,然后输入有x和M选项的tar命令。在必要时您会被提醒放入另外一张软盘。
      
      $ tar xMf /dev/fd0
      
     2. gzip命令
      
      减少文件大小有两个明显的好处,一是可以减少存储空间,二是通过网络传输文件时,可以减少传输的时间。gzip是在Linux系统中经常使用的一个对文件进行压缩和解压缩的命令,既方便又好用。
      
      语法:gzip [选项] 压缩(解压缩)的文件名
      
      各选项的含义:
      
      -c 将输出写到标准输出上,并保留原有文件。
      
      -d 将压缩文件解压。
      
      -l 对每个压缩文件,显示下列字段:
      
      压缩文件的大小
      
      未压缩文件的大小
      
      压缩比
      
      未压缩文件的名字
      
      -r 递归式地查找指定目录并压缩其中的所有文件或者是解压缩。
      
      -t 测试,检查压缩文件是否完整。
      
      -v 对每一个压缩和解压的文件,显示文件名和压缩比。
      
      -num 用指定的数字num调整压缩的速度,-1或--fast表示最快压缩方法(低压缩比),-9或--best表示最慢压缩方法(高压缩比)。系统缺省值为6。
      
      假设一个目录/home下有文件mm.txt、sort.txt、xx.com。
      
      例1:把/home目录下的每个文件压缩成.gz文件。
      
      $ cd /home
      
      $ gzip *
      
      $ ls
      
      m.txt.gz sort.txt.gz xx.com.gz
      
      例2:把例1中每个压缩的文件解压,并列出详细的信息。
      
      $ gzip -dv *
      
      mm.txt.gz 43.1%-----replaced with mm.txt
      
      sort.txt.gz 43.1%-----replaced with sort.txt
      
      xx.com.gz 43.1%-----replaced with xx.com
      
      $ ls
      
      mm.txt sort.txt xx.com
      
      例3:详细显示例1中每个压缩的文件的信息,并不解压。
      
      $ gzip -l *
      
      compressed uncompr. ratio uncompressed_name
      
      277 445 43.1% mm.txt
      
      278 445 43.1% sort.txt
      
      277 445 43.1% xx.com
      
      $ ls
      
      mm.txt.gz sort.txt.gz xx.com.gz
      
      例4:压缩一个tar备份文件,如usr.tar,此时压缩文件的扩展名为.tar.gz
      
      $ gzip usr.tar
      
      $ ls
      
      usr.tar.gz
      
    3.  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
      
    展开全文
  • 5.Linux文件文件系统的压缩和打包

    千次阅读 2018-10-01 20:30:14
    1.压缩文件案的用途 2.Linux 系统常见的压缩指令 3.压缩工具之:gzip、zcat 4.压缩工具之:bzip2、bzcat 5.打包工具: tar 6.打包压缩 7.完整备份工具:dump 8.恢复备份文件:rostore 9.其他常见的压缩与备份...

    目录

    1.压缩文件案的用途

    2.Linux 系统常见的压缩指令

    3.压缩工具之:gzip、zcat

    4.压缩工具之:bzip2、bzcat

    5.打包工具: tar

    6.打包压缩

    7.完整备份工具:dump

    8.恢复备份文件:rostore

    9.其他常见的压缩与备份工具:dd


    1.压缩文件案的用途

    压缩文件,顾名思义就是对文件进行压缩,通过一些技术手段在不改变信息内容的前提下减少档案占用磁盘的内存,在进行网络传输时,可以减少传输时间。

    2.Linux 系统常见的压缩指令

    在 Linux 的环境中,压缩文件案的扩展名大多是:『*.tar, *.tar.gz, *.tgz, *.gz, *.Z, *.bz2』

    使用扩展名的意义:每种压缩工具压缩出来都会有一个后缀,当你解压是也是应给用对应的解压工具将压缩文件解压出来,才会的到你原本正确的文档,就像加密和解密一样,解密方式不对,信息也就破译不出来。

    以下的扩展名是对应的软件和含义:

    压缩扩展名含义
    *.Zcompress 程序压缩的档案
    *.gzgzip 程序压缩癿档案
    *.bz2bzip2 程序压缩癿档案
    *.tartar 程序打包癿数据,并没有压缩过
    *.tar.gztar 程序打包的档案,其中并且经过gzip的压缩
    *.tar.bz2tar 程序打包的档案,其中并且经bzip2 的压缩

    3.压缩工具之:gzip、zcat

    gzip是Linux当前用的最广的压缩工具。

    命令:gzip

    解释:压缩文件

    命令:zcat

    解释:查看压缩文件内容

    语法:

    gzip   [选项]  档案名

    zcat   档案名

    选项

    选项含义
    -c将压缩的数据输出到屏幕上,可透过数据流重导向来处理
    -d夹压缩的参数显示,解压
    -t检验一个压缩文件的一执行,检查档案是否出差错
    -v显示出原档案/压缩档案的压缩比等信息

    -#

    压缩等级:-1 最快,压缩比差,-9 最慢,压缩比好,默认是:-6

    例子:

    复制一个 :etc/hosts 文件到 /test 文件夹下,然后最  hosts 档案进行压缩

    从上面可以看出,当你压缩之后,原来的档案已经不见了,只剩下一个压缩文件,但你希望压缩完,源文件还在怎么做?

    加上 -c 参数:

    使用命令:gzip  -c  hosts  > hosts.gz

    解压 hosts.gz 压缩文件,使用命令:gzip  -d  hosts.gz


    4.压缩工具之:bzip2、bzcat

    命令:bgzip2

    解释:压缩文件

    命令:bzcat

    解释:查看压缩文件内容

    语法:

    bgzip2   [选项]  档案名

    bzcat   档案名

    选项

    选项含义
    -c将压缩过程产生的数据输出到屏幕上
    -d解压缩
    -k保留原档案
    -z压缩的参数
    -v显示原档案/压缩档案的压缩比信息
    -#压缩比参数,-9:最佳,-1:最快

    例子:

    从 : /etc 拷贝一个hosts 档案到 /test 文件夹下,然后使用 bzip2 进行压缩和解压

    如果想压缩后保留原档案怎么做?

    使用命令:bizp -c  hosts > hosts.bz2

    查看bzip2的压缩文件,使用bzcat命令:


    5.打包工具: tar

    功能:归档,把多个文件归档成一个文件,但是没有压缩功能,,不仅文档大小不会变小反而会增大,因为多了一个打包的东西,它也是需要占用空间的。

    例子:当你进行搬迁的时候,只需要叫搬家公司把你家里零零散散的东西,全部打包放入一辆打的汽车里面,不用一次拿一点,把东西进行分类打包,收起来方便,找起来也方便,但是占用的空间还是一样的,因为没有对这些东西进行压缩,所以说打包就是让你的物品看起来有规律,根据你自己的方式。

    命令:tar

    解释:打包文件

    语法:

    tar  [选项]  档案

    选项

    选项含义
    -c创建归档文件
    -x解开归档文件
    -t查看压缩文包内的文件(不解档的情况下)
    -z用Gzip压缩或者解压
    -j用bzip压缩或者解压
    -v显示归档或解档过程
    -f目标文件名
    -p保留原始的权限与属性
    -P使用绝对路径来压缩
    -C提示解压到目录

    例子:

    创建一个归档文件(-c),显示归档过程(-v),指明打包后的名字(-f)为:hosts.tar,打包的 hosts 这个档案

    解释:把档案 hosts 归档为一个名为:hosts.tar的归档文件,并显示归档过程。

    命令:tar  -cvf  hosts.tar  hosts

    归档后归档文件还变大了:

    上面可以发现,归档的时候原档案还是存在的,但是你想归档的时候自动删除原档案怎么做?

    使用命令:tar tar -cvf   hosts.tar   hosts   --remove-files

    如何在解档的情况下查看档案的内容呢?

    使用命令:tar -tvf  hosts.tar

    如何解压这个档案?

    使用参数(-x)解档,使用参数(-f)指令解档文件,参数(-v)显示接档过程:

    使用命令:tar  -xvf  hosts.tar

    把打包文件解压到指定文件夹中:

    在 /test 新建一个文件夹,package ,然后他hosts.tar解档到package 这个文件夹中

    例子2:把多个文件打包在一起

    把  /etc 文件夹下的services、passwd、hosts文件夹拷贝到 、/test 文件夹下,然后将他们打包后命名为:mypackage01.tar

    不解档的情况下查看档案内容:

    现在已经把三个档案全部打包在mypackage.tar当中,我们如何之解档我们需要的档案呢?比如之接档:passwd 这个档案:

    使用命令:tar -xvf  mypackage01.tar  passwd


    6.打包压缩

    在打包之后同时对这个文件进行压缩。

    命令:tar

    解释:打包文件

    语法:

    tar  [选项]  档案

    选项

    选项含义
    -c创建归档文件
    -x解开归档文件
    -t查看压缩文包内的文件(不解档的情况下)
    -z用Gzip压缩或者解压
    -j用bzip压缩或者解压
    -v显示归档或解档过程
    -f目标文件名
    -p保留原始的权限与属性
    -P使用绝对路径来压缩
    -C提示解压到目录

    例子:

    结合上面的知识,在打包文件 services、passwd 、hosts文件的同时,删除原档案,然后再使用Gzip进行压缩:

    使用命令:tar -zcvf   mypackage.tar.gz  *   --remove-files

    解释:cvf参数和上面一样代表一个简单的归档,加上z参数代表还要进行压缩,并指定用Gzip,* 代表是对所有文件进行操作,--remove-files 代表只保留打包压缩文件,注意:打包压缩的后缀名是:.tar.gz 代表是先进行打包然后用Gzip压缩。

    如何进行解档和解压呢?

    使用命令:tar -zxvf package02.tar.gz

    解释:-z参数后面跟了一个-x参数,此时-x参数不仅有解档的功能,还具有解压的功能,而且解压的是Gzip类型的压缩文件。

    同理可以在打包的同时也可以用bzip2来压缩和解压,只需要把上面的-z参数改变成-j即可,如下命令:

    打包压缩:tar -jcvf   mypackage.tar.gz  *   --remove-files

    解压解档:tar -jcvf   mypackage.tar.gz  *   --remove-files


    7.完整备份工具:dump

    简介:dump的功能顾名思义就是对文件系统进行备份,他的强大之处是可以为备份设置一个等级,提高备份的效率,比如完全备份是level0,level1是差异备份,levels是增量备份,那你第一次进行 dump 后,再迚行第二次 dump 时, 你可以指定不同的备份等级,假如指定等级为 1 时,此时新备份的数据只会记录与第一次备份所有差异的档案而已。简单如下图所示:

    注意:备份级别的问题,数据备份,在进行备份时,是以级别比它低的为参考点的,比如:第一到第四次备份级别分别为:0、1、2、3,那么就是增量备份,如果第一到第四次备份级别分别为:0、9、8、7,那就是差异备份。下图解释:

    命令:dump

    语法:

    dump [-Suvj] [-level] [-f 备份档] 待备份资料

    选项含义

    选项含义
    -S仅列出后面的待备份数据需要多少磁盘空间才能够备份完毕
    -u将这次 dump 的时间记录到 /etc/dumpdates 档案中
    -v将 dump 的档案过程显示出来
    -j加入 bzip2 的支持!将数据进行压缩,默认bzip2 压缩等级为 2
    -level从 -0 ~ -9 共十个等级
    -f类似 tar ,后面接产生的档案,亦可接dev/sdax 装置文件名等
    -W列出在 /etc/fstab 里面的具有 dump 定 partition 是否有备份过

    例子:备份一个分区试一试吧。

    查看一下我们现在挂载的分区有几个,命令:df -h

    查看备份 /dev/sda5文件系统需要多少容量,命令:dump -S  /dev/sda5 

    现在开始对/dev/sda5 做一个全备份,使用级别0,文件名记录成为 /mydump/1.dump,同时更新记录文件:

    命令:dump    -0u   -f   mydump/1.dump     /dev/sda5

    上面的第一次完全备份已经完成了,我们可以看一下 :/etc/dumpdates 档案查看备份时间:

    在设备:/dev/sda5 下创建几个档案,分别命名为:test01,test02,test03,然后做增量备份,级别是1,那么现在2.dump文件之备份了,test01,test02,test03这三个文件

    再创建一个档案,test04,做一个备份,级别是2,可以从级别的增长看出是增量备份,现在备份级别是2,前面级别1,比它小,所以以级别1的档案为参考进行备份,所以3.dump值备份了一个档案,那就是test04咯。

    我们可以查看一下我们的备份文件,在目录 。/mydump/下

    提示:差异备份的原理和增量备份的原理是一样的。


    8.恢复备份文件:rostore

    命令:restore

    语法:

    restore -r [-f dumpfile]

    选项

    选项含义
    -t查看dump文件备份的数据
    -C此模式可以将 dump 内的数据拿出来跟实际的文件系统做比较,最终会列出『在 dump 档案内有记录的,且目前文件系统不一样』的档案
    -i进入互动模式,可以仅还原部分档案,用在 dump 目录时的还原
    -r将整个 filesystem 还原的一种模式,用在还原针对文件系统的 dump 备份
                                           常用选项
    -h察看完整备份数据中的 inode 与文件系统 label 等信息
    -f接你要处理的那个 dump 档案
    -D与 -C 进行搭配,可以查出后面接的挂载点与 dump 内有不同的档案

    例子1:

    在不恢复dump文件时,查看1.dump里面的内容

    使用命令:restore  -t  -f   /mydump/1.dump

    现在试着破坏一下 :/dev/sda5的文件,然后恢复一下:

    恢复文件,先进去到:/mmt/sda5 目录下,然后逐一恢复备份的文件:


    例子2:仅还原部分档案的 restore 互动模式

    某些时候你并不需要把备份文件的东西全部恢复,只想恢复你想要的部分,这是就可以使用档案恢复的互动模式,可以选择你想要回复的文件。

    这个例子依旧接着上面的例子的基础,先删除 、/mnt、sda5下的test文件,然后只回复备份2.dump的 test02这个文件,如何做呢?

    恢复部分文件,仅恢复test02


    9.其他常见的压缩与备份工具:dd

    9.1.dd命令

    简介:这个命令可以用来制作一些大文件,同样在备份的时候是一个很有用的工具,dd命令可以复制几乎硬盘的所有内容。

    1.建立大型档案,

    使用命令:dd  

    例子:

    在 : /test 建立一个档案名为newdev,新建一个200M的大档案,如何做呢?

    看一下这个档案的信息,可以看到这个档案的大小是200M:

    2.数据备份

    比如现在想把、/dev/sda5 这个分区的文件全部复制出来怎么做呢?

    使用命令:dd if=/dev/sda5  of=mybackfiles

    现在把挂载在:/mnt/sda5 上的设备:/dev/sda5 给卸载,格式化掉,然后看一下是否可以使用刚刚备份的大文件去恢复这个分区?

    小技巧:你还可以使用dd来实现硬盘的对拷功能,比如你现在有一个硬盘,设备名称是:/dev/sda ,另一个名称是:/dev/sdb使用命令,指令输入文件位置和输出文件位置,即:dd if=/dev/sda  of=/dev/sdb,就能实现两个硬盘数据的拷贝。本分分区的原理也是一样的。

     

    展开全文
  • 第2期谢耀华等:基于分类重排LZW的图像无损压缩算法239 1.4LZW编码 Lzw编码是一种基于字典的压缩方法它 使用固定长度的码字对相继出现的由单个信源符 号所构成的长度可变的符号序列进行编码,而不依 赖于待编码信源...
  • Centos7-文件归档与压缩

    千次阅读 2018-10-21 16:41:42
    文章目录1.tar1.1命令与参数1.2归档例子1.3打包加...用法:tar [参数] [压缩文件名] [要压缩文件] 使用参数时,可以不使用 - 参数: -c create,创建文件 -x extract,提取解压还原文件 -v 显示执行显示过程 -...
  • matlab开发-m4areadreadmpeg4aacorm4a压缩文件。m4aread读取m4a或aac压缩音频文件,就像wavread读取未压缩音频文件一样
  • C# 文件压缩下载

    千次阅读 2014-10-28 09:47:43
    /// 压缩文件存在是否覆盖 /// 是否压缩成功 /// <Author></Author> public static Boolean PackageFolder(String folderName, String compressedFileName, Boolean overrideExisting) { if (folderName....
  • Linux文件压缩与打包

    千次阅读 2016-06-27 20:16:24
    压缩文件的用途与技术 比较大型的文件通过所谓的压缩技术之后,可以将它的磁盘使用量降低,可以达到减低文件大小的效果,此外,有的压缩程序还可以进行大小限制,使一个大型文件系统可以分成为数个小型文件,以方便...
  • 2021年前端面试题及答案

    万次阅读 多人点赞 2020-02-11 19:29:34
    此外对于图片的处理可以使用压缩函数或resize函数,处理图片的同时破坏其包含的HTML代码; 3. 使用随机数改写文件名和文件路径,使得用户不能轻易访问自己上传的文件; 4. 单独设置文件服务器的域名; 前端跨越问题 ...
  • 我们在日常工作中很多地方都需要用到PDF文件,有时通过聊天软件会因为过大无法成功发送,有时提交资料也会提示超过系统大小,那么有没有免费的压缩PDF,其他达到指定大小的方法呢? 首先我们从两个方面来分类过大的...
  • TensorFlow使用CNN实现中文文本分类

    万次阅读 多人点赞 2018-11-14 19:23:21
    TensorFlow使用CNN实现中文文本分类 读研期间使用过TensorFlow实现过简单的CNN情感分析(分类),当然这是比较low的二分类情况,后来进行多分类情况。但之前的学习基本上都是在英文词库上训练的。断断续续,想整理...
  • 操作系统中文件系统-文件分类

    千次阅读 2015-03-24 17:30:48
    一、文件的概念 1. 文件(file) (1) 文件是软件机构,软件资源的管理方式; (2) 具有符号名的一组相关元素的有序序列,是一段程序或数据的集合; (3) 一组赋名的相关联字符流的集合,或者是相关记录。...
  • zip压缩/解压缩带空文件夹的文件

    千次阅读 2018-10-27 09:51:52
    zip压缩/解压缩带空文件夹的文件 2011年07月21日 20:04:54 flex_work 阅读数:7152 标签: filestringbytebuffernullinclude 更多 个人分类: Flex And Java  在EncryptZip的项目中对Zip的加密/解密没有...
  • Linux总结

    千次阅读 多人点赞 2020-01-14 20:36:45
    1.2 操作系统简单分类 二 、初探Linux 2.1 Linux简介 2.2 Linux诞生简介 2.3 Linux的分类 三 、Linux文件系统概览 3.1 Linux文件系统简介 3.2 文件类型与目录结构 四 、Linux基本命令 4.1 目录切换命令 4.2...
  • Linux的文件类型分类

    千次阅读 2016-08-20 20:59:30
    Linux文件一般是用一些相关的应用程序创建,比如图像工具、文档工具、归档工具... .... 或 cp工具等。linux文件的删除方式是用rm 命令。 Linux文件类型; Linux文件类型和Linux文件的文件名所代表的意义是两个...
  • java实现zip压缩文件(同一文件夹下的多个文件夹打成一个zip包) 博客分类:  JAVA 此文链接:http://zhangzhaoaaa.iteye.com/blog/2115048  参考:...
  • 2 文件压缩分类 1 有损压缩 2 无损压缩 无损压缩: 通过解压之后 能形成和源代码一木一样的压缩方式。 有损: 解压缩之后和源文件格式不完全相同,但基本不影响。 例如 视频的清晰度。 压缩 :通过一些算法来达到...
  • DropIt是够按照用户定义的文件分类规则对文件进行智能分类处理,有了它你只需要定义好分类规则,DropIt便会自动将同类文件放到同一文件夹下,实现自动整理省时省力,而且软件无需安装完全免费。通过协调设置工具,可...
  • java压缩zip文件中文乱码问题

    千次阅读 2015-01-04 15:48:09
    用java来打包文件生成压缩文件,有两个地方会出现乱码 1、内容的中文乱码问题,这个问题网上很多人给出了解决方法,两种:修改sun的源码;使用开源的类库org.apache.tools.zip.ZipOutputStream和org.apache.tools....

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 97,425
精华内容 38,970
关键字:

压缩文件的分类