Linux 系统常见的压缩命令

记录。
环境:CentOS 8

Linux的扩展名没有什么特别的作用,但在Linux环境中,压缩文件的扩展名大多是 *.tar,*.tar.gz,*.tgz,*.gz,*.Z,*.bz2。这是因为Linux支持的压缩命令非常多,某一种命令压缩的文件___一般___(有特例)只能由该命令解压缩。压缩文件的扩展名便可以让我们明确压缩文件该用什么命令解压缩,

Compress

这个命令在老旧系统中常用,目前__很少__用到。如果要使用,需要安装ncompress

$ yum install ncompress  #安装ncompress
  • 语法:

    $compress [-rcv] 文件或目录  #压缩命令
    $uncompress 文件.Z    #使用compress压缩的文件,一般会以.Z为扩展名
    
  • 选项与参数:

    -r  :   连同目录下的文件一起压缩
    -c  :   将压缩的数据输出称为standard output #一般用于数据流重定向
    -v  :   显示压缩过程的相关信息。
    
  • 示例:

    #-c选项的使用
    #man.config为测试用例
    $compress -c man.config > man.config.back.Z
    #在当前目录下,将man.config压缩,将压缩信息放入man.config.back.Z中
    

gzip,zcat

gzip常用的压缩命令,可以使用gzip解开compresszipgzip等软件所压缩的文件,其所对应的压缩文件为*.gz

  • 语法:

    $gzip [-cdtv#] 文件名
    $zcat 文件名.gz       #zcat可以用来查看gzip压缩的纯文本文件的内容,这样即使不将文件解压                  缩,也能看到文件内容,很是方便。
    
  • 选项与参数:

    -c  :   将压缩的数据输出到屏幕上,用于数据流重定向。可以通过这个选项自定义压缩后的文件名。解压缩也可用该选项
    -d  :   解压缩的参数。不同于compress(压缩),uncompress(解压缩)。gzip的压缩和解压缩都是命令gzip来实现,-d来控制实际的功能。
    -v  :   显示源文件/压缩文件的压缩比等信息
    -?  :   ?是数字(取值范围1~9),随着数值的增加,压缩速率越来越慢,压缩比越来越好
    
  • 示例:

    通过gzip -c *.gz > new_name 可以使得*.gz文件保留,同时被解压的文件名变为new_name

  • tips:

    1. gzip压缩的文件可以在Windows下被_WinRAR_软件解压缩
    2. gzip这个压缩命令主要是想替代compress,所以使用gzip -d可以解开compress的压缩文件,zcat也可以查看compress的压缩文件
    3. gzip提供1~9的压缩等级,一般使用默认的6就非常好了。
    4. compressgzip一样,若不使用-c参数,则压缩文件后,原来的被压缩文件会消失,生成新的压缩文件*.Z*.gz
    5. -c选项也可用于解压缩过程

bzip2,bzcat

bzip2的压缩比比gzip还要好,与gzip的用法基本一致。

  • 语法:

    $bzip2 [-cdkzv#] 文件名
    $bzcat 文件名.bz2
    
  • 选项和参数:

    -c  :   将压缩数据输出到屏幕上,解压缩的过程也可以使用该参数
    -d  :   解压缩的参数
    -k  :   保留原文件,而不会删除原始文件
    -z  :   解压缩的参数
    -v  :   显示详细信息
    -#  :   压缩等级,与gzip同样
    
  • 示例:

    从上图可以看出,bzip2的压缩比高于gzip,因为原始文件比较小,两者之间的差别不明显。

  • tips:

    1. 当要解压缩*.bz2文件时,可以使用 bunzip2 来代替 bzip2 -d
    2. -c参数也可用于解压缩。

打包命令:tar

前面所说的命令,大多是针对单一文件的压缩,虽然gzipbzip2也能对目录进行压缩,但它们实质上是对目录中的所有文件“分别”进行压缩。tar命令使用十分广泛,WinRAR也支持对.tar.gz的解压缩。

  • 语法:

    $tar [-j|-z] [cv] [-f 新建文件名] filename            #打包与压缩
    $tar [-j|-z] [tv] [-f 新建的文件名]                   #查看文件名
    $tar [-j|-z] [xv] [-f 新建的文件名] [-C 目录]          #解压缩
    
  • 选项与参数:

    -c  :   新建打包文件。可搭配-v查看过程中被打包的文件名
    -t  :   查看打包文件内容,主要是查看文件名
    -x  :   解打包或解压缩。搭配-C(大写)在特定目录解开
    -j  :   通过bzip2支持进行压缩/解压缩
    -z  :   通过gzip支持进行压缩/解压缩
    -v  :   查看过程中的信息
    -f filename :后接被处理文件名
    -C 目录   :   在特定目录解压缩
    
    • 记忆三种简单实用的方法:

      • 压缩:tar -jcv -f filename.tar.bz2 要被压缩的文件或目录名称
      • 查询:tar -jtv -f filename.tar.bz2
      • 解压缩:tar -jxv -f filename.tar.bz2 -C 欲解压缩的目录
  • tips:

    1. tar命令的参数非常多,记忆时可以以 命令+参数组合 的形式来记忆。
    2. tar命令非常重要,可以用于备份文件,发行软件等。

参考资料

  • 鸟哥的Linux私房菜-基础学习篇(第三版)

Linux系统常见压缩命令相关推荐

  1. linux zip压缩排除目录,Linux系统zip压缩命令详细参数,附文件排除选项的正确用法...

    这次给博客添加了纯代码缓存之后,发现缓存文件竟然达到了50多MB!而我的服务器每次还需要同步至七牛,文件体积的增加都会增加文件远程同步备份的时间.因此,我第一想到的办法就是在网站ZIP压缩打包的时候排 ...

  2. linux系统zip压缩命令,linux zip 压缩命令

    linux   zip命令 的基本用法是: zip  [参数] [打包后的文件名] [打包的目录路径] linux   zip命令 参数列表: -a     将文件转成ASCII模式 -F     尝 ...

  3. linux系统下 压缩和解压缩文件命令

    linux系统下 压缩和解压缩文件命令 1.把/home目录下面的mydata目录压缩为mydata.zip zip -r mydata.zip mydata #压缩mydata目录 2.把/home ...

  4. Linux 打包及压缩命令使用方法总结

    欢迎关注方志朋的博客,回复"666"获面试宝典 来源:https://tanjuntao.github.io/ 1. 概览 在这篇文章中,我将总结 Linux 系统下面常见的几种压 ...

  5. linux系统tar命令慢,Linux系统下tar命令的使用技巧

    <Linux系统下tar命令的使用技巧>由会员分享,可在线阅读,更多相关<Linux系统下tar命令的使用技巧(3页珍藏版)>请在装配图网上搜索. 1.Linux系统下tar命 ...

  6. linux命令实验设备,实验二 Linux系统的常用命令

    实验二Linux系统的常用命令 一.实验目的 1.X-windows的简单配置,掌握进入命令行模式和图形化模式的方法2.GNOME桌面的使用,包括注销与登录,系统信息的查看,GNOME下软件的使用3. ...

  7. linux系统中scp命令的用法

    scp是 secure copy的缩写, scp是linux系统下基于ssh登陆进行安全的远程文件拷贝命令.linux的scp命令可以在linux服务器之间复制文件和目录. scp命令的用处: scp ...

  8. 监控Linux系统状态的命令

    监控Linux系统状态的命令1 :w uptime命令查看系统负载 : w/uptime 最后面三个数字表示1分钟 ,5分钟 ,15分钟 平均有多少进程占用CPU 某一时刻1颗CPU只能有一个进程在使 ...

  9. Linux系统中常用命令行命令、快捷键、创建长路径的快捷键

    Linux系统中常用命令行命令.快捷键.创建长路径的快捷键 1.常用Linux命令: 1.1 文件和目录: cd /home 进入 '/home' 目录 cd - 返回上一级目录 cd -/- 返回上 ...

最新文章

  1. 同学我看你答题分钱总被淘汰你得充充电了!
  2. 从5个经典工作开始看语义SLAM
  3. Python学习笔记:面向对象编程(3)
  4. 【那么普通却那么自信,一分钟学Source Insight】Source Insight 4 tab设置为4个空格
  5. 韩国最新「美女元宇宙」引爆Reddit!最强换脸神器美女自拍一键转漫画
  6. 驱动_Input输入子系统
  7. 预防死锁可以破坏哪些死锁的必要条件
  8. 2018最新Java面试78题:数据结构+网络+NoSQL+分布式架构
  9. 服务器系统核心和带gui区别,Windows Server 2012图形用户界面(GUI)和服务器核心(Server Core)之间的切换...
  10. ASP.net与PHP两大网站开发架构优势对比
  11. 基于zeromq的高性能分布式RPC框架Zerorpc 性能测试
  12. haddler处理队列 netty_Netty的任务队列的Task的三种使用场景
  13. 去重 属性_亿万级海量数据去重软方法,spark/flink/mr等通用
  14. sockaddr_in结构体、socklen_t类型、bzero函数简要记录
  15. 大学计算机网络实训目的,计算机专业大学生毕业实习目的
  16. 金融用计算机,CFA考试指定计算器使用攻略
  17. python二元一次方程组用鸡兔同笼的思路来写编程_应用二元一次方程组——鸡兔同笼教学设计...
  18. DirectX12 3D游戏开发实践(龙书)第六章 利用Direct3D的绘制几何体
  19. itext 5.3.0实现对pdf文件添加(文字和图片)水印
  20. Spring-Bean加载顺序控制/循环依赖控制

热门文章

  1. 东华软件青年学者丨唐卓:在“大数据+云计算”世界里探索产学研的路径
  2. ESP32设备驱动-MAX30100心率监测传感器驱动
  3. Python计算一个人BMI(身体质量指数)指数
  4. D16 HBase数据模型/命令行/存储机制
  5. 数论专题(1)数论函数,整数分块
  6. mysql根据作品分数进行分组并计数
  7. STM32F10x Flash 模拟 EEPROM
  8. 计算机图形学数学基础——向量点乘和叉乘
  9. c#.Net MVC服务端下载文件、限制下载速度、大文件下载、对性能的影响、对大文件的支持、对断点续传和多线程下载的支持
  10. maven gpg报错:no default secret key: No secret key signing failed: No secret key