在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. iOS设备的重力感应

    重力感应是每台iOS设备都具备的功能,所以在应用用好重力感应会有意想不到的效果 1.添加CoreMotion框架 2.在需要使用重力感应的类中添加头文件 #import <CoreMotion/ ...

  2. [Java] Java IO Files

    Files 使用 FileInputStream 或 FileReader 可以用于读入文件,前者基于二进制,后者基于文本.使用它们不需要读取整个文件,但是只能按照它们存储的顺序,依次读取字节,或字符 ...

  3. 放爬虫nginx

    禁止火狐浏览器访问 例子

  4. Tomcat配置多个端口号或多个应用

    一.在Tomcat下配置一个应用服务(service)中,配置多个端口号. 即一个service配置多个端口,项目可以通过多个端口访问. 修改tomcat-home\conf下的server.xml, ...

  5. 【解决方法】VS 丢失模板

    今天要用VS2008做一个报表,可是在添加新建项的时候却没有报表(rdlc)模板. 解决方法: 1 拷贝文件 1.1 32位windows 将 C:\Program Files\Microsoft V ...

  6. MFC——error LNK2005: "protected: static struct AFX_MSGMAP

    好久没弄VC程序了,今天弄了下,还会用公司给的窗口重绘作为基类来实现,竟然报了这个错误. 找了一下是这里: 有个窗口重绘类是基类: class CBaseDlg : public CDialog 新建 ...

  7. DateTime格式大全

    DateTime dt = DateTime.Now;//    Label1.Text = dt.ToString();//2005-11-5 13:21:25//    Label2.Text = ...

  8. docker 服务注册

    docker 服务注册 etcd docker run -d --name etcd -p 4001:4001 -p 7001:7001 elcolio/etcd

  9. RGB的三维模型与渐变色-颜色系列之一

    一.前言 以下与颜色相关的日志记录了俺学习颜色的有关容,限于编写时的水平,难免存在缺点与错误,希望得到朋友.同行和前辈的指教,非常感谢.1.  RGB的三维模型与渐变色-颜色系列之一2.  <颜 ...

  10. java中for循环的6种写法

    有些写法上的说明写的过于武断,可能有很多不当之处,仅供参考.   package ForLoop; import java.util.ArrayList; import java.util.Itera ...