(六)Linux下的压缩命令
========================================================================================
.zip格式的压缩和解压缩
zip 压缩文件名 源文件
含义:这条命令压缩的是文件。
zip -r 压缩文件名 源目录
含义:这条命令压缩的是目录,包括目录下的文件一并压缩进去。
unzip 压缩文件名
含义:解压缩,不管是压缩的文件还是压缩的目录都用此来解压缩
注意:Linux下的.zip和windows下的.zip格式是一样的,也就是说windows下的.zip压缩包可以直接拿到
Linux下解压缩
========================================================================================
.gz格式的压缩和解压缩
gzip 源文件
含义:将源文件压缩为.gz格式,但是源文件会消失。
gzip -c 源文件 > 压缩文件
含义:将源文件压缩为.gz格式,但是源文件会保留。其实原理是将压缩的.gz输入到“压缩文件”而已。
gzip -r 目录
含义:压缩目录下的所有子文件,但是注意不能压缩目录。
gunzip 压缩文件
含义:解压缩。原有的.ga压缩文件会消失的。
gzip -d 压缩文件
含义:解压缩。同上。
gunzip -r 目录
含义:将目录下所有的.gz格式的文件解压缩。
注意:windows下的.rar格式压缩文件不能在Linux下使用。.gz格式是Linux下独有的压缩格式,但是也可以在
windows下被解压缩。
========================================================================================
.bz2格式的压缩与解压缩
bzip2 源文件
含义:压缩源文件为.bz2格式,不保留源文件。
bzip2 -k 源文件
含义:压缩源文件,但是保留源文件。
注意:.bz2不支持压缩目录。
bzip2 -d 压缩文件
含义:解压缩。如果加选项“-k”,则保留压缩文件
bunzip2 压缩文件
含义:解压缩。如果加选项“-k”,则保留压缩文件
========================================================================================
.tar.gz和tar.bz2格式的压缩和解压缩
为了解决.gz格式不能压缩目录,所以Linux给出了.tar.gz的压缩格式。它的原理其实就是先将目录
(也可以将文件)打包成一个.tar格式的单一文件包,然后再使用.gz的压缩方式对其压缩。那么我
们就按照它的实现原理来讲几个命令:
(1)打包成.tar.gz格式。
先将文件或者目录打包成.tart格式,使用如下命令:
tar -cvf 打包文件名 源文件
选项:
-c 打包的意思
-v 显示过程
-f 指定打包后的文件名
比如我们打包出了文件”cangls.tar”,然后再将其打包成.tar.gz。直接使用.gz格式的命令即可。如下:
gzip cangls.tar
这样子最终就打包成了cangls.tar.ga格式的压缩包了。
(2)解压缩
下面我们可以一步步的将.tar.gz解压缩。首先使用.gz的命令解压成.tar格式,如下:
gunzip cangls.tar.gz
这样子就会被解压成cangls.tar。然后再使用.tar的解压方法,如下:
tar -xvf cangls.tar
这样子就最终解压成了cangls。
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
上面说的是其实现原理,你可以这样子一步步来压缩。但是有没有一句话就能搞定的命令呢?当然有,
如下,
一句话将文件或者目录打包成.tar.gz格式:
tar -zcvf 压缩包名 源文件
选项:
-z 就是直接打包成.tar.gz格式的意思
一句话将.tar.gz格式解压缩:
tar -zxvf 压缩包名
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
而关于.tar.bz2的实现原理跟上面是一样的,这里就不再多说。
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
下面做一下总结,其实.tar.gz和.tar.bz2是linux下最常用的命令。对于初学者,只需要记住一下几个命令即可:
一般记住下面的命令即可:
tar -zcvf 压缩包名 源文件或者目录
含义:将源文件或者目录打包成.tar.gz格式。
tar -zxvf 压缩包名
含义:将.tar.gz格式的包解压。
tar -jcvf 压缩包名 源文件或者目录名
含义:将源文件或者目录压缩成.tar.bz2格式的包。
tar -jxvf 压缩包名
含义:将.tar.bz2格式解压缩
上面的命令都是压缩到或者解压到当前目录下,如果想压缩到或者解压到其他目录下呢?
用下面的两个示例来说明一下方法吧:
tar -zxvf cangls.tar.gz -c /tmp/
含义:将cangls.tar.gz解压到tmp目录下。也就是说,后面跟上“-c 目录名”,就是要解压到的地方。
tar -zcvf /tmp/cangls.tar.gz cangls
含义:将cangls压缩到/tmp目录下,并且命名为cangls.tar.gz。也就是压缩到哪里,在前面直接加上目录即可。
========================================================================================
(六)Linux下的压缩命令的更多相关文章
- linux下的压缩命令
linux zip命令 zip -r myfile.zip ./* 将当前目录下的所有文件和文件夹全部压缩成myfile.zip文件,-r表示递归压缩子目录下所有文件. 2.unzip unzip - ...
- linux下的压缩命令 tar zip gunzip
p.p1 { margin: 0; font: 12px Arial; color: rgba(5, 42, 136, 1) } p.p2 { margin: 0; font: 12px " ...
- Linux下的压缩zip,解压缩unzip命令详解及实例
实例:压缩服务器上当前目录的内容为xxx.zip文件 zip -r xxx.zip ./* 解压zip文件到当前目录 unzip filename.zip ====================== ...
- Linux下的压缩解压缩命令详解
linux zip命令zip -r myfile.zip ./*将当前目录下的所有文件和文件夹全部压缩成myfile.zip文件,-r表示递归压缩子目录下所有文件. 2.unzipunzip -o - ...
- Linux下的压缩zip,解压缩unzip命令具体解释及实例
实例:压缩server上当前文件夹的内容为xxx.zip文件 zip -r xxx.zip ./* 解压zip文件到当前文件夹 unzip filename.zip ================= ...
- Linux下的压缩和解压缩命令gzip/gunzip
作者:邓聪聪 Linux下的压缩和解压缩命令——gzip/gunzip yum -y install zip gzip (--安装压缩工具) gzip命令 gzip命令用来压缩文件.gzip是个使用广 ...
- Linux下的压缩解压缩命令详解及实例
实例:压缩服务器上当前目录的内容为xxx.zip文件 zip -r xxx.zip ./* 解压zip文件到当前目录 unzip filename.zip ====================== ...
- Linux下的压缩(zip)解压(unzip)缩命令
.zip命令 zip -r myfile.zip ./* 将当前目录下的所有文件和文件夹全部压缩成myfile.zip文件,-r表示递归压缩子目录下所有文件. 2.unzip命令 unzip -o ...
- 常见压缩格式分析,及 Linux 下的压缩相关指令
可先浏览加粗部分 一.常见压缩档 *.zip | zip 程式壓縮打包的檔案: (很常见,但是因为不包含文件名编码信息,跨平台可能会乱码) *.rar | winrar 程序压缩打包的档案:(在win ...
随机推荐
- shell脚本:行列转换
Mybatis中写sql,如select,会涉及到一长串列名. `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(100) COLLATE ut ...
- C# 空合并运算符 ??
C#语言中,??运算符称为空合并运算符: a??b形式的空合并表达式要求a为可以为null的类型或引用类型.如果a为非null,则a??b的结果为a:否则,结果为b.仅当a为null时,该操作才计算b ...
- C# 工具类之数据库链接
一.SQL Server 相关 /// <summary> /// 数据库的通用访问代码 /// 此类为抽象类, /// 不允许实例化,在应用时直接调用即可 /// </summa ...
- BigDecimal 类的使用
BigDecimal 类的使用 1.使用 BigDecimal 的原因 由于需要计算金额,所有需要高精度计算,所有需要使用 BigDecimal 类. BigDecimal能够精确的表示一个小数, ...
- Groovy中each、find跳出循环
在groovy中使用break跳出each或者find的循环会会报错,为什么呢?groovy中each.find方法是一个闭包操作,要想跳出循环要使用 return true,但有几个问题有待研究: ...
- webpack-bundle.js原理
bundle.js 源码 //a.js import { log } from './b.js' log('hello') //b.js export const log = function (m) ...
- 如何正确地在SOE中输出日志信息
ArcGIS for Server提供完善的日志管理机制,用于日志的记录.查询和自动清除.开发人员在开发编写SOE代码时,应该采用该机制进行日志记录的输出.如果不采用该机制,输出的日志消息会写到Arc ...
- Single Number 数组中除了某个元素出现一次,其他都出现两次,找出这个元素
Given an array of integers, every element appears twice except for one. Find that single one. Note:Y ...
- 如何提高 Java 中锁的性能
锁不是问题的根源,锁之间的竞争才是 通常在多线程的代码中遇到性能方面的问题时,一般都会抱怨是锁的问题.毕竟锁会降低程序的运行速度和其较低的扩展性是众所周知的.因此,如果带着这种“常识”开始优化代码,其 ...
- 通过注解实现Spring 声明式事务管理
小Alan接着上一篇Spring事务管理入门与进阶做一些补充,如果对Spring事务管理还不了解的可以看看上一篇文章. 实例 在我们开始之前,至少有两个数据库表是至关重要的,在事务的帮助下,我们可以实 ...