加入收藏 | 设为首页 | 会员中心 | 我要投稿 云计算网_汕头站长网 (https://www.0754zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Linux > 正文

Linux下常用压缩 解压命令和压缩比率对比

发布时间:2022-10-20 12:55:39 所属栏目:Linux 来源:
导读:  Linux下常用压缩 解压命令和压缩比率对比

  常用的格式有:

  tar, tar.gz(tgz), tar.bz2,

  不同方式,压缩和解压方式所耗CPU时间和压缩比率也差异也比较大。

  tar

  只是打包动
  Linux下常用压缩 解压命令和压缩比率对比
 
  常用的格式有:
 
  tar, tar.gz(tgz), tar.bz2,
 
  不同方式,压缩和解压方式所耗CPU时间和压缩比率也差异也比较大。
 
  tar
 
  只是打包动作,相当于归档处理,不做压缩;解压也一样,只是把归档文件释放出来。
 
  (1)打包归档格式:
 
  复制代码
 
  tar -cvf examples.tar files|dir
 
  说明:
 
  -c, –create create a new archive 创建一个归档文件
 
  -v, –verbose verbosely list files processed 显示创建归档文件的进程
 
  -f, –file=ARCHIVE use archive file or device ARCHIVE 后面要立刻接被处理的档案名,比如–file=examples.tar
 
  举例:
 
  tar -cvf file.tar file1 #file1文件
 
  tar -cvf file.tar file1 file2 #file1,file2文件
 
  tar -cvf file.tar dir #dir目录
 
  复制代码
 
  (2)释放解压格式:
 
  复制代码
 
  tar -xvf examples.tar (解压至当前目录下)
 
  tar -xvf examples.tar -C /path (/path 解压至其它路径)
 
  说明:
 
  -x, –extract, extract files from an archive 从一个归档文件中提取文件
 
  举例:
 
  tar -xvf file.tar
 
  tar -xvf file.tar -C /temp #解压到temp目录下
 
  复制代码
 
  tar.gz tgz (tar.gz和tgz只是两种不同的书写方式,后者是一种简化书写linux压缩,等同处理)
 
  这种格式是Linux下使用非常普遍的一种压缩方式,
 
  兼顾了压缩时间(耗费CPU)和压缩空间(压缩比率)
 
  其实这是对tar包进行gzip算法的压缩
 
  (1)打包压缩格式:
 
  复制代码
 
  tar -zcvf examples.tgz examples (examples当前执行路径下的目录)
 
  说明:
 
  -z, –gzip filter the archive through gzip 通过gzip压缩的形式对文件进行归档
 
  举例:
 
  tar -zcvf file.tgz dir #dir目录
 
  复制代码
 
  (2)释放解压格式:
 
  tar -zxvf examples.tar (解压至当前执行目录下)
 
  tar -zxvf examples.tar -C /path (/path 解压至其它路径)
 
  举例:
 
  tar -zcvf file.tgz
 
  tar -zcvf file.tgz -C /temp
 
  3 tar.bz
 
  Linux下压缩比率较tgz大,即压缩后占用更小的空间,使得压缩包看起来更小。
 
  但同时在压缩,解压的过程却是非常耗费CPU时间。
 
  (1)打包压缩格式:
 
  复制代码
 
  tar -jcvf examples.tar.bz2 examples (examples为当前执行路径下的目录)
 
  linux压缩_linux 压缩命令 tar_linux压缩命令 zip
 
  说明:
 
  -j, –bzip2 filter the archive through bzip2 通过bzip2压缩的形式对文件进行归档
 
  举例:
 
  tar -jcvf file.tar.bz2 dir #dir目录
 
  复制代码
 
  (2)释放解压:
 
  tar -jxvf examples.tar.bz2 (解压至当前执行目录下)
 
  tar -jxvf examples.tar.bz2 -C /path (/path 解压至其它路径)
 
  举例:
 
  tar -jxvf file.tar.bz2
 
  tar -jxvf file.tar.bz2 -C /temp
 
  4 gz
 
  压缩:
 
  gzip -d examples.gz examples
 
  解压:
 
  gunzip examples.gz
 
  5 zip
 
  zip 格式是开放且免费的,所以广泛使用在 Windows、Linux、MacOS 平台,要说 zip 有什么缺点的话,就是它的压缩率并不是很高,不如 rar及 tar.gz 等格式。
 
  压缩:
 
  zip -r examples.zip examples (examples为目录)
 
  解压:
 
  zip examples.zip
 
  6 .rar
 
  压缩:
 
  rar -a examples.rar examples
 
  解压:
 
  rar -x examples.rar
 
  压缩比率,占用时间对比
 
  为了保证能够让压缩比率较为明显,需选取一个内容较多、占用空间较大的目录作为本次实验的测试。
 
  找了一个大概有23G的目录来测试,首先要明确由于执行环境的变化,误差在所难免
 
  首先明确一个概念:
 
  压缩比率=原内容大小/压缩后大小,压缩比率越大,则表明压缩后占用空间的压缩包越小
 
  .tar
 
  复制代码
 
  打包:
 
  time tar -cvf test.tar /usr/test
 
  时间:
 
  real 3m20.709s
 
  user 0m3.477s
 
  sys 0m42.595s
 
  大小:
 
  打包前:23214680
 
  打包后:22202984
 
  耗时:3m20.709s
 
  压缩比率:22202984/23214680
 
  解压:
 
  time tar -xvf test.tar
 
  大小:
 
  解压前:22202984
 
  解压后:23211064
 
  耗时:
 
  real 2m47.548s
 
  linux压缩命令 zip_linux压缩_linux 压缩命令 tar
 
  user 0m4.999s
 
  sys 1m14.186s
 
  复制代码
 
  .tgz
 
  复制代码
 
  打包压缩:
 
  time tar -zcvf test.tgz /usr/test
 
  时间:
 
  real 16m30.767s
 
  user 16m1.394s
 
  sys 1m7.391s
 
  大小:
 
  打包前:23211064
 
  打包后:18949032
 
  耗时:
 
  压缩比率:
 
  解压:
 
  tar -zxvf test.tar
 
  大小:
 
  解压前:18949032
 
  解压后:23211064
 
  耗时:
 
  real 3m52.418s
 
  user 2m46.325s
 
  sys 1m21.442s
 
  复制代码
 
  .tar.bz2
 
  复制代码
 
  打包压缩:
 
  time tar -jcvf test.tar.bz2 /usr/test
 
  时间:
 
  real 80m39.422s
 
  user 80m14.599s
 
  sys 0m58.623s
 
  大小:
 
  打包前:23211064
 
  打包后:18728904
 
  耗时:80m39.422s
 
  压缩比率:
 
  解压:
 
  time tar -jxvf test.tar.bz2
 
  时间:
 
  real 27m54.525s
 
  user 27m44.108s
 
  sys 1m43.645s
 
  大小:
 
  解压前:18728904
 
  解压后:23211064
 
  复制代码
 
  综上结果,初步结论:
 
  综合起来,在压缩比率上: tar.bz2>tgz>tar
 
  占用空间与压缩比率成反比: tar.bz2
 

(编辑:云计算网_汕头站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!