很多时候,通过互联网发送或接收大文件和图片是一件令人头疼的事。压缩及解压缩工具正好可以应对这个问题。下面让我们快速浏览一些可以使得我们的工作更加轻松的开源工具。

Tar

Tar 由 ‘Tape archiver(磁带归档器)’ 衍生而来,最初被用来在磁带上归档和存储文件。Tar 是一个 GNU 软件,它可以压缩一组文件(归档),或提取它们以及对已有的归档文件进行相关操作。在存储、备份以及传输文件方面,它是很有用的。在创建归档文件时,Tar 可以保持原有文件和目录结构不变。通过 Tar 归档的文件的后缀名为 ‘.tar’。

基本用法如下:

a) 创建归档 (c / –create)

tar --create --verbose --file=archive.tar file1 file2 file3

tar cvf archive.tar file1 file2 file3

创建一个归档

b) 列出归档文件内容 ( t / –list)

tar --list archive.tar

列出归档中包含的文件

c) 提取归档 (x / –extract)

tar xvf archive.tar

tar xvf archive.tar --wildcards '*.c'
-  从归档中提取后缀名为 *.c 的文件。

提取文件

只提取需要的文件

d) 对归档文件进行更新 ( u / –update)

tar uvf archive.tar newfile.c
-  假如归档的newfile.c  要比先前已经归档的新,则添加更新的 newfile.c 到归档里面.

更新一个归档

e) 从归档中删除文件 (–delete)

tar --delete -f archive.tar file1.c
- 从压缩包'archive.tar' 中删除文件'file1.c'

删除文件

更加具体的使用方法请参考tar 主页

Gzip / Gunzip

Gzip 即 GNU zip,它是一个被广泛用于 Linux 操作系统中的压缩应用,被其压缩的文件的后缀名为’*.gz’ 。

基本用法如下:

a) 压缩文件

gzip file(s)

每个文件将被单独压缩

压缩文件

通常在压缩完成后,它会将原来的文件删除。我们可以使用 -c 选项来保留原来的文件。

gzip -c file > file.gz

压缩后保留原有文件

我们也可以将一组文件压缩到一个单独的文件中

cat file1 file2 file3 | gzip > archieve.gz

压缩一组文件

b) 检查压缩比

被压缩文件的压缩比可以使用 ‘-l’ 选项来进行检验。

gzip -l archieve.gz

检查压缩率

c) 解压文件

Gunzip 用来解压文件,在这里,原有的(压缩)文件在被解压后同样会被删除。使用 -c选项来保留原始文件。

gunzip -c archieve.gz

解压文件

gzip 加上’-d’选项 和 gunzip 对压缩文件有同样的效果。

更多细节可以从 gzip 主页 得到。

Bzip2 / Bunzip2

同 gzip 一样,Bzip2 也是一个压缩工具,与其他传统的工具相比,它可以将文件压缩到更小,但其缺点为:运行速度比 gzip 慢。

基本用法如下:

a) 压缩文件

一般情况下,针对压缩而言,Bzip2 不用什么选项,将被压缩的文件被传递为它的参数。每个文件被单独压缩,且压缩文件以 ‘bz2′ 为后缀名。

bzip2 file1 file2 file3

文件压缩

使用 ‘-k’ 选项可以使得在压缩或解压缩之后保留原有的文件。

在压缩后保留原有文件

b) 解压

‘-d’ 选项被用来解压缩。

使用 -d 选项解压缩文件

也可以使用 bunzip2 来解压缩。

bunzip2 filename

解压文件

bunzip2 可以解压后缀名为 bz2, bz, tbz2 和 tbz 的文件。带有 tbz2 和 tbz 的文件在压缩后,后缀名将变为’.tar’ 。

bzip2 -dc
-   执行解压文件到标准输出的功能。

7-zip

7-zip 是另一个开源压缩软件。它使用 7z 这种新的压缩格式,并支持高压缩比。因此,它被认为是比先前提及的压缩工具更好的软件。在 Linux 下,可以通过 p7zip 软件包得到,该软件包里包含 3 个二进制文件: 7z, 7za 和 7zr,读者可以参考 p7zip wiki 来了解这三个二进制文件之间的不同。在本篇中,我们将使用 7zr 来解释 7-zip 的用法。归档文件以 ‘.7z’ 为后缀名。

基本用法如下:

a) 创建归档

7zr a archive-name.7z file-name(s) / directory-name(s)

创建一个归档文件

b) 列出归档包含文件

7zr l archive-name.7z

列出归档中包含的文件

c) 提取归档文件

7zr e archive-name.7z

提取归档

d) 更新归档文件

7zr u archive-name.7z new-file

更新一个归档文件

e) 从归档文件中删除文件

7zr d archive-name.7z file-to-be-deleted

删除文件

确认文件删除

Linux 下最为人熟知的解压缩工具的更多相关文章

  1. sar 找出系统瓶颈的利器 目前Linux上最为全面的系统性能分析工具之一 直接 sar -dur 1 30 即可看内存 CPU和IO占用

    12. sar 找出系统瓶颈的利器 sar是System Activity Reporter(系统活动情况报告)的缩写.sar工具将对系统当前的状态进行取样,然后通过计算数据和比例来表达系统的当前运行 ...

  2. sar命令,linux中最为全面的性能分析工具之一

    sar是System Activity Reporter(系统活动情况报告)的缩写.这个工具所需要的负载很小,也是目前linux中最为全面的性能分析工具之一.此款工具将对系统当前的状态就行取样,然后通 ...

  3. 终端的乐趣--Linux下有趣的终端命令或者工具【转】

    转自:https://blog.csdn.net/gatieme/article/details/52144603 版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原 ...

  4. Linux下的暴力密码在线破解工具Hydra安装及其组件安装-使用

    Linux下的暴力密码在线破解工具Hydra安装及其组件安装-使用 hydra可以破解: http://www.thc.org/thc-hydra,可支持AFP, Cisco AAA, Cisco a ...

  5. Linux下zip格式文件的解压缩和压缩

    Linux下zip格式文件的解压缩和压缩 Linux下的软件包很多都是压缩包,软件的安装就是解压缩对应的压缩包.所以,就需要熟练使用常用的压缩命令和解压缩命令.最常用的压缩格式有.tar.gz/tgz ...

  6. (总结)Linux下的暴力密码在线破解工具Hydra详解

    (总结)Linux下的暴力密码在线破解工具Hydra详解 学习了:https://blog.csdn.net/yafeichang/article/details/53502869

  7. Windows/Linux下磁盘使用的图形化工具简介

    Windows/Linux下磁盘使用的图形化工具简介   如何以图形界面查看磁盘及分区的大小及剩余容量呢?今天我为大家介绍两款Windows/Linux下磁盘使用的图形化工具分别是Spacesniff ...

  8. Linux下文件的打包、解压缩指令——tar,gzip,bzip2,unzip,rar

    本文是笔者对鸟叔的Linux私房菜(基础学习篇) 第三版(中文网站)中关于 Linux 环境下打包和解压缩指令的内容以及日常操作过程中所接触的相关指令的总结和记录,以供备忘和分享.更多详细信息可直接参 ...

  9. Linux下的两种磁盘分区工具的使用

    如何使用fdisk和parted分区工具来进行硬盘分区,下面我来说一下在Linux系统中这两种硬盘分区工具的使用方法:     ----------fdisk分区工具----------       ...

随机推荐

  1. codevs1226倒水问题(Bfs)

    /* 首先建立模型 可以看成是三个水杯 第三个无穷大 (这里看成是201足够了) 最少步数 想到Bfs 维护队列里的状态:要有个步数 还要有v :此时刻三个杯子有多少水 然后倒水:因为没有刻度 所以有 ...

  2. 从今天开始学习C#啦

    此博客为证,在下从今天开始学习C#,并把心得体会记录下来.

  3. Java POI 两种导出方式

    这里面包含了模板导出方法和自定义模板进行导出 package jp.co.syspro.poo.action.hibikoyou; import java.io.ByteArrayOutputStre ...

  4. Java实现文件上传

    最近自己在做一个小系统玩的时候涉及到了文件的上传,于是在网上找到Java上传文件的方案,最后确定使用common-fileupload实现上传操作. 需求说明 用户添加页面有一个“上传”按钮,点击按钮 ...

  5. Asp.Net中的session配置

    一.InProc模式(缺省模式) <sessionState mode="InProc" timeout="20"></sessionStat ...

  6. MySQL索引及Explain及常见优化

    MySQL索引设计的原则 1. 搜索的索引列,不一定是所要选择的列.换句话说,最适合索引的列是出现在WHERE 子句中的列,或连接子句中指定的列,而不是出现在SELECT 关键字后的选择列表中的列. ...

  7. 『重构--改善既有代码的设计』读书笔记----Extract Method

    在编程中,比较忌讳的一件事情就是长函数.因为长函数代表了你这段代码不能很好的复用以及内部可能出现很多别的地方的重复代码,而且这段长函数内部的处理逻辑你也不能很好的看清楚.因此,今天重构第一个手法就是处 ...

  8. Vim中安装delimitMate,auto-pairs插件不能输入中文问题

    在安装了delimitMate插件之后发现不能正常使用中文输入了,输入法系统是ibus. 解决办法是在ibus的设置中的“在应用程序中使用内嵌编辑模式”这一项去除就可以正常输入中文了,看来可能是ibu ...

  9. 《JavaScript dom 编程艺术》 placeholder占位符IE8兼容办法。

    在<JavaScript dom 编程艺术>第11章学来的. 相对于用JavaScript替换文本框的提示语句 <!DOCTYPE html> <html lang=&q ...

  10. 获取fragment中对应的控件的写法

    getActivity().findViewById(id);//用来关联activity中加载的控件id