在Linux系统中,压缩文件通常是先将若干文件(包括目录)打包成一个tar文件,然后再调用压缩程序将tar文件压缩成相应的压缩包,这也就是为什么Linux系的压缩包的后缀通常都是像tar.gz,tar.Z这样的格式。因此,tar命令也就成了在Linux系统中压缩解压最常用的命令了,他不仅可以用来打包或者解开tar文件,还可以调用相应的压缩程序。所以,一个tar命令就可以完成大多数的压缩和解压的任务。这也是笔者推荐的方式。当然还有一些情况比如zip或者rar文件,由于他们通常都是直接将源文件压缩成包的(不带tar后缀名),这类压缩包通常都需要使用另外的命令来进行操作,这在后面会相续提到。

我们首先来看tar命令。这里只是介绍常用的功能选项方便大家快速上手,其他的高级功能可以查看帮助,在使用bash命令时,遇到不清楚的地方使用--help选项查看帮助是一个好的习惯。

tar

tar命令的常用选项如下表所示:

选项(短) 选项 作用
-c --create 创建压缩文件
-x --extract, --get 解压文件
-f --file 指定文件名
-v --verbose 详细的列出处理的文件

所以解压普通的tar文件命令就是:

$ tar –xvf file.tar      //解压tar包

-x表示解压,-v表示显示详细输出(不加也行),-f用来指定解压文件,如果你是在解压对象是文件(大多数情况都是这样,除非你是用管道传递得到解压对象的),那么这个必须要加上。

tar可调用的压缩程序

选项 压缩格式 压缩程序
-z .gz gzip
-j .bz2 bzip2
-Z .Z compress

当看到tar.gz后缀的压缩包,使用-z选项调用gzip程序解压,当看到tar.bz2后缀的压缩包,使用-j选项调用bzip2程序解压。下面给出了几个例子。

$ tar -xzvf file.tar.gz  //解压tar.gz
$ tar -xjvf file.tar.bz2 //解压tar.bz2
$ tar –xZvf file.tar.Z //解压tar.Z

是不是觉得很麻烦,其实还有一个-a选项,可以根据后缀名自动选择调用相应的压缩程序,所以上面的3种情况可以直接使用:

$ tar -xavf file.tar.xxx  //解压tar.xxx | 万能解压命令

很方便不是吗?笔者就经常使用这个命令,上面的那些选项,不查帮助有时还真记不起来。

前面介绍的都是解压到当前目录,那么如何解压到指定的目录呢?

通过查看帮助发现了一个新选项-C --directory=DIR 改变目录DIR。假设我们要把某文件解压到test目录,在前面的基础上加上-C选项即可:

$ tar -xavf file.tar.gz -C ./test/  //解压文件到指定目录

rar

$ unrar e file.rar          //解压rar到当前目录
$ unrar x file.rar ./test/ //解压rar到指定目录

zip

$ unzip file.zip           //解压zip
$ unzip file.zip -d ./test //解压zip到指定目录

转载请注明来自:田小777-博客园

原文地址:http://www.cnblogs.com/kitian616/p/4522456.html

如若转载,请保留原文地址。谢谢合作。

Linux的压缩解压命令快速上手——解压篇的更多相关文章

  1. 阿里语音识别(语音转文字)java调用全程手把手详解-适合中小学生快速上手

    阿里语音识别服务java调用全程手把手详解-适合中小学生快速上手 阿里语音识别与百度语音识别的调用对比: 用例:1分30秒的录音文件    百度用时:3秒    阿里用时:30秒    识别准确率来看 ...

  2. Linux网络状态工具ss命令使用详解【转】

    ss命令用于显示socket状态. 他可以显示PACKET sockets, TCP sockets, UDP sockets, DCCP sockets, RAW sockets, Unix dom ...

  3. (转)Linux网络状态工具ss命令使用详解

    Linux网络状态工具ss命令使用详解 原文:http://www.landui.com/help/show-5991.html ss 是 socket statistics 的缩写.顾名思义,ss ...

  4. linux中压缩与解压缩命令小结

    linux中压缩与解压操作非常常见,其命令参数也非常的多,这里只介绍最经常用的带打包文件的几种压缩和解压方式和几个最常用的参数. 现在最常用的压缩和解压工具是gzip和bzip2,这两种工具不能相互解 ...

  5. Linux中rz和sz命令用法详解

    http://www.111cn.net/sys/linux/67810.htm 在linux中rz 和 sz 命令允许开发板与主机通过串口进行传递文件了,下面我们就来简单的介绍一下rz 和 sz 命 ...

  6. linux中压缩、解压缩命令详解

    tar -c: 建立压缩档案-x:解压-t:查看内容-r:向压缩归档文件末尾追加文件-u:更新原压缩包中的文件 这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个.下面的 ...

  7. linux中压缩与解压缩命令

    .tar 解包:tar xvf FileName.tar 打包:tar cvf FileName.tar DirName (注:tar是打包,不是压缩!) ——————————————— .gz 解压 ...

  8. Linux 打包压缩与搜索命令

    1.tar 用于对文件进行打包压缩或解压,格式为tar[选项][文件],-f参数必须放到参数最后一位 tar -czvf etc.tar.gz /etc tar参数及作用 参数 作用 -c 创建压缩文 ...

  9. linux打包压缩与搜索命令

    1.tar命令 tar命令用于对文件进行打包压缩或解压,格式为“tar [选项] [文件]”.  tar命令的参数及其作用 参数 作用 -c 创建压缩文件 -x 解开压缩文件 -t 查看压缩包内有哪些 ...

随机推荐

  1. HDU-4925 Apple Tree

    http://acm.hdu.edu.cn/showproblem.php?pid=4925 Apple Tree Time Limit: 2000/1000 MS (Java/Others)     ...

  2. 【转】unity3d input输入

    Input 输入 按键 Input.GetKey(“up”) = Input.GetKey(KeyCode.UpArrow) 按住键盘上键 Input.GetKeyDown (“up”) 按下键盘上键 ...

  3. 关于Unity的ViewSpace(CameraSpace)的坐标系

    从昨天开始遇到一个看似很小,但令我苦恼的问题,由于对Unity的坐标系没有直接搞清楚,所以导致一个shader没看懂,于是发了个贴:http://game.ceeger.com/forum/read. ...

  4. LaTeX手动安装宏包(package)以及生成帮助文档的整套流程

    注意:版权所有,转载请注明出处. 我使用的是ctex套装,本来已经自带了许多package,但是有时候还是需要使用一些没有预装的宏包,这时就需要自己安装package了.下载package可以从CTA ...

  5. java IO复习(三)

    package com.zyw.io; import java.io.File; import java.io.FilenameFilter; import java.util.ArrayList; ...

  6. bzoj 2741 分块+可持久化trie

    多个询问l,r,求所有子区间异或和中最大是多少 强制在线 做法: 分块+可持久化trie 1.对于每块的左端点i,预处理出i到任意一个j,()i,j)间所有子区间异或和中最大为多少,复杂度O(\(n\ ...

  7. 更改Tomcat startup.bat启动窗口名称

    通常在Tomcat bin目录下用startup.bat启动Tomcat ,启动窗口显示的Title是Tomcat 如果遇到一个服务器上多个Tomcat的话就会容易混淆.更改方法如下: 1 在bin目 ...

  8. 异步加载图片到GridView上,防止OOM

    图片资源: private int fore[]; private int back[]; fore = new int[]{R.drawable.a0, R.drawable.a1, R.drawa ...

  9. 各种Markdown处理器的列表

    从MarkdownImplementations - Markdown Community Group可以找到一个实现markdown处理器的列表,如下: Name Language Type Des ...

  10. Swift学习笔记八:枚举

    1. 枚举语法      1)枚举的定义 使用enum关键词而且把它们的整个定义放在一对大括号内: enum SomeEumeration { // enumeration definition go ...