Linux系统下文件压缩与打包命令

Linux系统下文件压缩与打包命令

常用的压缩文件拓展名
* .Z
* .zip
* .gz
* .bz2
* .xz
* .tar
* .tar.gz
* .tar.bz2
* .tar.xz


压缩命令

gzip,zcat/zmore/zless/zgrep

  • 描述:替换早期的compress命令提供更好压缩比,应用最广的压缩命令,建立出的压缩文件为*.gz
gzip [-cdtv#] 文件名
zcat 文件名.gz
  • 参数描述:
    • -c: 压缩数据输出到屏幕,可通过数据流重定向处理
    • -d: 解压缩的参数
    • -t: 检查压缩文件的一致性,看文件是否有错误
    • -v: 显示原文件/压缩文件压缩比
    • -#: 压缩等级【1-9】,默认是6
      • 1:最快,压缩比最差
      • ...
      • 9:最慢,压缩比最好
  • zcat/zmore/zless可以对应于cat/more/less方式读取纯文本文件被压缩后的压缩文件

bzip2, bzcat/bzmore/bzless/bzgrep

  • 描述: 替换gzip,后缀是.bz2,用法几乎与gzip一致。
bzip2 [-cdkzv#] 文件名
bzcat 文件名.gz
  • 参数描述:
    • -c: 压缩数据输出到屏幕,可通过数据流重定向处理
    • -d: 解压缩的参数
    • -k: 保留原始文件而不会删除原始文件
    • -z: 压缩的参数(默认值,可以不加)
    • -v: 显示原文件/压缩文件压缩比
    • -#: 压缩等级【1-9】,默认是6
      • 1:最快,压缩比最差
      • 9:最慢,压缩比最好
具体范例
# 压缩并将信息显示
bzip2 -v services*
# 读出上例文件内容
bzcat services.bz2
# 解压缩
bzip2 -d services.bz2
# 将上例中解开的services采用最佳压缩比压缩,并保留原本文件
bzip2 -9 -c services > services.bz2

此处要注意,-c ... > ...的用法:将原本要输出到屏幕的内容转成文件->具体在bash中看

xz, xzcat/xzmore/xzless/xzgrep

  • 描述: 压缩比更高的软件,用法与上述两个基本相同
  • 参数描述:
    • -c: 压缩数据输出到屏幕,可通过数据流重定向处理
    • -d: 解压缩的参数
    • -t: 检查压缩文件的一致性,看文件是否有错误
    • -l: 列出压缩文件的相关信息
    • -k: 保留原始文件而不会删除原始文件
    • -#: 压缩等级【1-9】,默认是6
      • 1:最快,压缩比最差
      • 9:最慢,压缩比最好

对比一下几个命令的运行时间
time [gzip|bzip2|xz] -c wget-log > log.[gz|bz2|xz]

打包命令

tar

  • 描述: 将多个文件或者目录包成一个大文件的命令
  • 常用参数的描述
    • -c [可搭配-v]建立打包文件
    • -t [可搭配-v] 查看内容
    • -x [可搭配-v] 解压
    • -v 在处理的文件名显示出来
    • -z 通过gzip的支持进行压缩/解压缩,最好文件后缀是.tar.gz
    • -j 通过bzip2的支持进行压缩/解压缩,最好文件名后缀是.tar.bz2
    • -J 通过xz ~~, 文件后缀.tar.xz
    • -f 与即刻要处理的文件名放在一起【单独写可能不会忘记】
    • -C 在特定目录解压缩
    • -p [可搭配-c]保留备份数据的原本属性与权限,常用于备份
    • -P 保留绝对路径,即允许备份数据中含有根目录存在
    • --exclude=FILE 压缩过程中,不将FILE打包
    • 要注意:-z,-j,-J不能同用!
  • 常用打包搭配
    • 打包与压缩:tar [-z|-j|-J] [cv] [-f 待建立的新文件名] filename
    • 查看文件名:tar [-z|-j|-J] [tv] [-f 既有的tar文件名]
    • 解压缩:tar [-z|-j|-J] [xv] [-f 既有的tar文件名] [-C目录]

<wiz_tmp_tag id="wiz-table-range-border" contenteditable="false" style="display: none;">

 
上一篇:第九章、文件与文件系统的压缩与打包 Linux 系统常见的压缩命令


下一篇:转:myeclipse 8.x 插件安装方法终极总结