一、Linux系统常见的压缩指令

在Linux的环境中,压缩文件的扩展名较多,大多是:“ .tar,  .tar.gz,  .tgz,  .gz,  .Z,  .bz2, *.xz ”,这是因为Linux支持的压缩指令非常多,且不同的指令所用的压缩技术并不相同,当然彼此之间可能就无法互通压缩/解压缩文件。

几个常见的压缩文件扩展名:

  • Linux上常见的压缩指令就是gzip, bzip2以及最新的xz,至于compress已经退流行了。
  • Linux下的zip指令主要是为了支持windows常见的zip(ps:其实Linux也早就有zip指令)。
  • 这些压缩指令只能对一个文件来压缩和解压缩,因此,对于多个文件而言,则需要tar指令将多个文件“打包”成一个文件。

1.1  gzip, zcat/zmore/zless/zgrep

gzip可以说是应用度最广的压缩指令了!目前 gzip 可以解开compress, zip 与 gzip 等软件所压缩的文件。至于gzip所创建的压缩文件为  *.gz 的文件名。

现列举几个常用的操作,例如:

  • gzip -v  待压缩文件

注意:当你使用gzip进行压缩时,在默认的状态下原本的文件会被压缩成为.gz 的文件名,原始文件就不再存在了。这点与一般习惯使用 windows 做压缩的朋友所熟悉的情况不同!

  • gzip -c 待压缩文件 > 压缩文件

例如:gzip -c  services > services.gz

注意:-c可以将原本要转成压缩文件的数据内容,将它变成文字类型从屏幕输出,然后我们可以通过大于(>) 这个符号,将原本应该由屏幕输出的数据,转成输出到文件而不是屏幕,所以就能够创建出压缩挡了。只是文件名也要自己写,当然最好还是遵循   gzip的缩文件名要求较佳!!

  • gzip -d  压缩文件                    -------解压缩操作

例如:gzip -d  services.gz

注意:gzip -d可以用来解压缩,直接将压缩文件解压,解压后的文件名就是去掉“.gz”后的名字。

  • cat/more/less可以使用不同的方式来读取纯文本文件,而zcat/zmore/zless则可以对应于cat/more/less的方式来读取纯文本文件被压缩后的压缩文件。
  • zgrep中可以直接搜索压缩文件中的关键字。

1.2  bzip2,bzcat/bzmore/bzless/bzgrep

若说gzip是为了取代 compress 并提供更好的压缩比而成立的,那么bzip2则是为了取代gzip并提供更佳的压缩比而来的。    bzip2的用法几乎与gzip 相同。

例:

1.3  xz, xzcat/xzmore/xzless/xzgrep

虽然 bzip2已经具有很棒的压缩比,不过显然某些自由软件开发者还不满足,因此后来还推出了xz 这个压缩比更高的软件!这个软件的用法也跟 gzip/bzip2 几乎一模一样!

例:

二、打包指令: tar

前面谈到的指令大多仅能针对单一文件来进行压缩 ,而tar可以将多个目录或文件打包成一个大文件,同时还可以通过 gzip/bzip2/xz 的支持,将该文件同时进行压缩!

那个filename.tar.bz2是我们自己取的文件名,tar 并不会主动的产生创建的文件名喔!我们要自定义啦!所以扩展名就显的很重要了!如果不加[-z|-j|-J]的话,文件名最好取为.tar 即可。如果是-j 选项,代表有bzip2 的支持,因此文件名最好就取为    .tar.bz2,因为bzip2会产生.bz2的扩展名之故!至于如果是加上了 -z 的 gzip的支持,那文件名最好取为*.tar.gz啦!

另外,由于“ -f    filename”是紧接在一起的,过去很多文章常会写成“-jcvf  filename”,这样是对的,但由于选项的顺序理论上是可以变换的,所以很多读者会误认为“-jvfc  filename”也可以。事实上这样会导致产生的文件名变成 c!因为-fc嘛!所以啰,建议您在学习 tar时,将“ -f  filename ”与其他选项独立出来,会比较不容易发生问题。

因此,利用tar 进行压缩、查询和解压缩操作,常用的命令为:(ps:其中 -v 可有可无)

A. 压缩:

  • 对于文件 fileName.tar.gz,解压命令:tar -zcv -f fileName.tar.gz 要被压缩的文件或目录
  • 对于文件 fileName.tar.bz2,解压命令:tar -jcv -f fileName.tar.gz 要被压缩的文件或目录
  • 对于文件 fileName.tar.xz,解压命令:tar -Jcv -f fileName.tar.gz 要被压缩的文件或目录

B. 查询:

  • 对于文件 fileName.tar.gz,解压命令:tar -ztv -f fileName.tar.gz
  • 对于文件 fileName.tar.bz2,解压命令:tar -jtv -f fileName.tar.gz
  • 对于文件 fileName.tar.xz,解压命令:tar -Jtv -f fileName.tar.gz

C. 解压缩:

  • 对于文件 fileName.tar.gz,解压命令:tar -zxv -f fileName.tar.gz -C 欲解压缩的目录
  • 对于文件 fileName.tar.bz2,解压命令:tar -jxv -f fileName.tar.gz -C 欲解压缩的目录
  • 对于文件 fileName.tar.xz,解压命令:tar -Jxv -f fileName.tar.gz -C 欲解压缩的目录

文件的压缩/解压缩、打包(Linux系统)相关推荐

  1. linux中的文件夹压缩文件,linux将文件拷贝到目录下Linux下文件的压缩与打包详解...

    在Linux中,有很多的压缩命令.利用这些压缩命令,可以方便的从网络上下载大型的文件.同时,我们知道,Linux文件的扩展名是没有特殊意义的,不过,因为Linux下存在着许多压缩命令,所以为了方便记忆 ...

  2. linux遍历文件夹下所有文件大小,Linux系统遍历文件夹 获取文件大小的操作(C语言实现)...

    /** linux 下遍历文件夹以及获取文件大小 */ #include #include #include #include /** 获取文件大小,但是文件大小不能超过2G ,该方法不推荐使用 */ ...

  3. Linux——tar打包文件和压缩解压缩

    1.压缩文件 gzip 文件名 压缩后的文件格式: .gz 2.解压缩文件 解压缩 .gz的压缩文件 gunzip 压缩文件名 3.tar 打包目录 tar tar命令可以用来压缩打包单文件.多个文件 ...

  4. linux 文件的压缩和打包

    在我们的生活中,经常会和朋友.同事.客户发一些文件.为了能够更加快速.高效的将文件传递出去,经常会用到压缩工具.压缩工具通过一定的算法,把数据给尽可能的缩小.这样不仅方便传递.而且可以节省空间.有时候 ...

  5. Note For Linux By Jes(4)-文件的压缩与打包

    Linux系统常见的压缩命令:compress,gzip,zcat,bzip2,bzcat 打包命令:tar 压 缩:tar-jcv-f filename.tar.bz2 要被压缩的文件或目录名称 查 ...

  6. 3.Linux 文件的压缩与打包

    1.常用压缩打包命令 常用的压缩打包扩展名为如下: *.Z compress 程序压缩的文件,非常老旧了,不再细说 *.gz gzip 程序压缩的文件: *.bz2 bzip2 程序压缩的文件: *. ...

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

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

  8. LINUX文件的压缩与打包

    gzip 文件名 后缀gz压缩 gzip -d 文件名 解压 zcat 文件名 直接查看gz压缩文件 bzip2 -z 文件名 后缀bz2压缩 bzip2 -d 文件名 解压 bzcat 文件名 直接 ...

  9. python对文件进行压缩解压缩基于zip格式

    一.python压缩模块简介 python直接通过内置压缩模块可以直接进行压缩文件的创建: 内置模块 zipfile/rarfile 完成压缩文件的操作. 二. zipfile模块基础使用 2.1 对 ...

最新文章

  1. Windows2003服务器不支持FLV视频的解决方法
  2. Qt Creator使用Memcheck检测内存泄漏
  3. mysql 对已有表分区_mysql怎么对先有表进行分区
  4. NRedis-Proxy - 高性能中间件服务器
  5. Https的数据请求的证书设置
  6. window - 安装 tomcat
  7. python傅里叶谐波分析_一种利用快速三角形式傅里叶变换的信号谐波分析方法
  8. 浅谈Java中的单例模式及四种懒汉模式
  9. 中考计算机excel考点,信息技术中考excel操作题部分操作要求及操作要点指导
  10. Vue 电商后台管理项目阶段性总结
  11. 编程题a ~ y的25个字母,从1位到4位的编码,输出这个编码对应的Index
  12. 云计算风起云涌,IaaS 步入黄金发展期
  13. TextView Recyclerview省略号相关
  14. 系统架构设计基础(一)
  15. 个人微信公众号——定位策略
  16. 利用迭代公式求平方根。
  17. QNX Neutrino RTOS简介
  18. 像素、分辨率、帧率、码率、清晰度的区别
  19. 初出茅庐的小李第63博客之FastLED库的使用
  20. 51单片机中断嵌套,返回主函数

热门文章

  1. 怎么实现接口解耦_将接口与实现解耦-使用分离的接口
  2. javascript进度条(js实例)
  3. 界面超漂亮的桌面时钟
  4. 【推荐】2020-2021 AI人工智能技术领域行业研究报告大合集(58份)
  5. 破解Navicat并登录MySQL方法
  6. ubuntu 16.04 安装 uvcvideo驱动
  7. 2023年制造业产品经理NPDP认证报名入口及指南
  8. nginx实现ip端口转发_Nginx 实现端口转发
  9. 20 个超棒的免费的响应式 Joomla 模板
  10. 2021年中国健康养老产业白皮书