==============================================================================
Linux系统解压缩
==============================================================================
概述:
本篇将介绍Linux系统中的压缩和解压缩的工具,以及归档工具(tar,cpio)
compress/uncompress:对应 .Z 结尾的压缩格式文件;
gzip/gunzip:其对应的是 .gz 结尾的压缩格式文件;
bzip2/bunzip2:其对应的是 .bz2 结尾的压缩格式文件;
xz/unxz: 其对应的是 .xz 结尾的压缩格式文件;
zip/unzip:其对应的是 .zip 结尾的压缩格式文件
1.压缩比和常用工具
★压缩比: 时间换空间(CPU的时间 --->磁盘空间) ★常用工具: 早期的有compress和uncompress,其对应的是 .Z 结尾的压缩格式文件,现在适应较多的有: xz/unxz: 其对应的是 .xz 结尾的压缩格式文件; tar,cpio:归档和展开归档
2.gzip和gunzip(使用最多)
gzip,gunzip,zcat ★语法: gzip [OPTION]... FILE ... ☉选项: -d:解压缩,相当于gunzip -c:将压缩或解压缩的结果输出至标准输出(gzip -c FILE > /PATH/TP/SOMEFILE.gz); -#:1-9,指定压缩比,值越大压缩比越大 如:gzip -9 m -v:显示详情 ☉解压缩: guzip ☉zcat: 不显式解压缩的前提下查看文本文件内容(适用于查看小文件) 如:zcat FILE > /PATH/TP/SOMEFILE
演示:
2.bzip2/bunzip2/bzcat
bzip2 [OPTION]... FILE ... -k:keep, 保留原文件; -d:解压缩; -#:1-9,压缩比,默认为6 ☉bzcat: 不显式解压缩的前提下查看文本文件内容 注意: bzip2和gzip命令的使用方式基本相同,压缩或解压缩后都会删除源文件
3.xz/unxz/zxcat(压缩比最强)
xz [OPTION]... FILE ... -#:1-9,压缩比,默认为6; ☉xzcat:
1.归档及常用工具
★归档: 归档就是将多个文件打包为单个文件以便于管理,默认的归档不会执行压缩。 ★常用的工具: tar,cpio(不常用)
2.tar命令
tar [OPTION...] [FILE]... ☉创建归档(-c,-f 指定文件): tar -c -f /PATH/TO/SOMEFILE.tar FILE... (后缀名固定以 .tar 结尾;) tar -cf /PATH/TO/SOMEFILE.tar FILE... (可以合并写为-cf ,但不能写为 -fc ,因为-f 选项后带参数) ☉展开归档(-x,-f 指定文件): tar -x -f /PATH/TO/SOMEFILE.tar (展开至归档所在的文件中) tar xf /PATH/TO/SOMEFILE.tar -C /PATH/TO/SOMEFILE (-C :展开归档至指定文件中) ☉查看归档文件中的列表(-t,-f 指定文件): tar -tf /PATH/TO/SOMEFILE.tar 多个选项可以合并,但-f由于要带参数,因此要放到最右侧 如:-cf,-xf,-cf; 选项的引导符 "-" 可省略。如:tar xf,tar zf
归档完成后通常需要压缩,结合此前的压缩工具,就能实现压缩多个文件了。
★结合压缩工具实现:归档并压缩: ☉-z:gzip(后缀名.tar.gz) tar -zcf /PATH/TO/MEFILE.tar.gz FILE... (创建归档并压缩); tar -zxf /PATH/TO/SOMEFILE.tar.gz (解压缩并展开归档,z不写也行) ☉-j:bzip2(后缀名.tar.bz2) -jcf -jxf ☉-J:xz(后缀名:.tar.xz) -Jcf -Jxf 展开归档可以直接使用 tar xf ,而无需为其指定对应的压缩工具选项即可
---最通用的压缩工具,即可以归档,又能压缩(现在不常用)
★创建归档(.zip后缀): zip file.zip /PATH/TO/SOMEFILE ★解压缩 unzip file.zip
★cpio cpio命令是通过重定向的方式将文件进行打包备份,还原恢复的工具,它可以解压以“.cpio”或者“.tar”结尾的文件。 ★用法: cpio[选项] > 文件名或者设备名 cpio[选项] < 文件名或者设备名 ★选项: -o:将文件拷贝打包成文件或者将文件输出到设备上; -i:解包,将打包文件解压或将设备上的备份还原到系统; -t:预览,查看文件内容或者输出到设备上的文件内容; -v:显示打包过程中的文件名称; -d:解包生成目录,在cpio还原时,自动的建立目录; -c:一种较新的存储方式 示例: 将etc目录备份: find ./etc-print |cpio -ov> etc.cpio 内容预览 cpio–tv < etc.cpio 要解包文件 cpio–iv < etc.cpio cpio–idv < etc.cpio