linux压缩或解压缩工具有很多,除了已经很少有人使用的compress外,现在常用的还有tar,bzip2,xz 和gziplinux压缩或解压缩工具有很多,除了已经很少有人使用的compress外,现在常用的还有tar,bzip2,xz 和gzip等,我们来说说它们的用法。

先来说bzip2。bunzip2和bzcat可以由bzip2指定选项来执行同样的结果,这里只介绍bzip2的用法。使用bzip2这个工具创建的文件以.bz2,.bz,.tbz,.tar.bz2或者.tbz2结尾。

bzip2命令的用法:

bzip2 [选项] [文件]

常用选项:

bzip2 -d        解压缩文件
bzip2 -c 将压缩或解压缩的结果送到标准输出
bzip2 -f 使用此选项,在解压缩文件时,若输出文件与现有文件同名,则覆盖同名的文件
bzip2 -k 在压缩或解压缩文件之后,保留原始文件
bzip2 -s 解压或压缩文件时,降低内存使用量
bzip2 -t 测试文件的完整性
bzip2 -v 压缩或解压缩文件时,显示具体过程
bzip2 -z 强制压缩一个文件
bzip2 -# 指定压缩比率

xz同样也是linux下出色的压缩工具,lunxz,xzcat,lzma,unlzma,lzcat命令可以由xz命令调用指定的选项来执行,因此只介绍xz命令的用法。xz命令生成的文件通常以.xz或者.lzma格式结尾。

xz命令的用法:

xz [选项] [文件]

常用选项有:

xz -z           压缩一个文件
xz -d 解压缩文件
xz -t 测试文件的完整性
xz -l 查看一个压缩文件的信息
xz -k 压缩完文件后不删除原始文件
xz -f 使用此选项时,若目标文件存在,则删除原始文件,再解压
xz -c 将执行命令的结果输出到标准输出
xz -F 指定压缩或解压缩文件的格式
xz -# 指定压缩文件时的压缩比率

linux上还有一个常用的解压工具,就是gzip了。同linux下其它工具一样,gunzip,zcat也可以由gzip指定的选项来执行,因此只介绍gzip命令的用法。用gzip命令创建的文件通常以.gz,.tar.gz,.tar.Z或者.tgz结尾。

gzip命令的用法:

gzip [选项] [文件]

常用选项有:

gzip -c            将命令的执行结果输出到标准输出
gzip -d 解压缩文件
gzip -f 使用此选项时,若目标文件存在,则删除原始文件,再解压
gzip -l 列出这个压缩文件的具体信息
gzip -n 解压缩文件时,忽略文件中原来的时间戳
gzip -N 解压缩文件时,保留文件中原始的时间戳
gzip -r 将指定目录下的所有文件及子目录一起压缩
gzip -t 测试文件的完整性
gzip -v 显示压缩或解压缩的具体过程
gzip -# 指定压缩比率

再来说说tar这个非常强大的工具吧。 tar最初是为了做磁带备份而设计的,它的作用是把文件和目录备份到磁带中,然后再从磁带中提取或恢复文件。现在可以使用tar命令来备份数据到任何存储介质上。tar是文件级备份,不必考虑底层文件系统类别,并且支持增量备份。tar命令创建的文件通常以.tar结尾,tar命令可以调用gzip,bz2或者xz工具来压缩或解压缩指定的文件.

tar命令的用法:

tar [选项] [文件]

常用选项有:

tar -z          压缩或解压缩一个文件
tar -x 从file.tar压缩包中提取所有文件
tar -A 追加一个压缩包到一个档案内
tar -c 创建了个压缩档案
tar -d 比较一个压缩档案和被压缩文件的区别
tar -r 追加文件到指定的压缩包中
tar -t 测试文件的完整性
tar -u 增量备份文件,只备份比压缩包中已经备份文件新的文件
tar -x 从一个压缩包中提取出文件
tar -C 解压缩文件到指定的目录
tar -f 指定要压缩或解压缩的文件
tar -j 调用bzip2来压缩或解压缩文件
tar -J 调用xz来压缩或解压缩文件
tar -p 解压缩文件时保留原始文件的权限
tar -v 显示压缩或解压缩的过程
tar -z 调用gzip来压缩或解压缩文件
tar -P 保留原始文件的绝对路径,解压时自动解压到绝对路径下
tar --exclude 打包目录时,不打包指定的文件

工具的用法都已经说完了,现在来看看实际工作中的用法。

例1:把系统中的/etc目录备份到/home目录下备份后的文件名为etc.backup的文件, 可以使用

#tar -jcvf etc.backup.tar.bz2 /etc

来把/etc/目录打包备份成结尾为tar.bz2的压缩包,也可以使用

#tar -zcvf etc.backup.tar.gz /etc

来把/etc/目录打包备份成结尾为tar.gz的压缩包,还可以使用

#tar -Jcvf etc.backup.tar.xz /etc

来把/etc/目录打包备份成结尾为tar.xz的压缩包

[root@localhost ~]# tar -jcvf /home/etc_backup.tar.xz /etc
/etc/
/etc/pm/
/etc/pm/power.d/
/etc/pm/sleep.d/
/etc/pm/config.d/
/etc/libuser.conf
/etc/security/
/etc/security/namespace.d/
... [root@localhost ~]# ls -lah /home
total 8.0M
-rw-r--r-- 1 root root 8.0M Apr 16 12:18 etc_backup.tar.xz

同样的,已经我们会看到各种格式的压缩文件,这时候我们可以使用tar xf filename.tar来解压这个压缩包。

例2:我们在某个目录下有个Python-2.7.9.tar.xz和pip-1.4.1.tar.gz的文件,我们可以使用如下命令来解压这两个压缩包。

[root@localhost ~]# tar xf Python-2.7.9.tar.xz
[root@localhost ~]# tar xf pip-1.4.1.tar.gz
[root@localhost ~]# ls -Alh
total 13M
drwxr-xr-x 17 1000 1000 4.0K Dec 11 2014 Python-2.7.9
-rw-r--r-- 1 root root 12M Apr 16 12:24 Python-2.7.9.tar.xz
drwxr-xr-x 5 501 games 4.0K Aug 8 2013 pip-1.4.1
-rw-r--r-- 1 root root 435K Apr 16 12:24 pip-1.4.1.tar.gz

我们可以看到,tar没有指定使用哪个工具来解压这两个不同格式的压缩包,这两个压缩包也已经被成功解压了。实际上,tar命令会根据后面所接的压缩包的格式自动调用解压工具,这样以后再看到不同格式的压缩文件,我们就可以使用tar xf tar_file这个命令来解压压缩包了,so easy吧!!!

祝大家工作学习愉快!!

linux下的打包与压缩的更多相关文章

  1. linux下的打包和压缩

    linux中常见的两种压缩包文件的格式是.tar..gz和.tar.gz..tar仅仅是将文件简单地打包,文件的大小没有变化,也就是说.tar文件仅仅是一个包,没有被压缩:.tar.gz文件是打包后用 ...

  2. linux下文件打包、压缩详解

    Linux平台下,有如下几种常见的压缩工具: ========================================================================= 工 具 ...

  3. 【最详细最完整】在Linux 下如何打包免安装的QT程序?

    在Linux 下如何打包免安装的QT程序? 版权声明:嵌入式linux相关的文章是我的学习笔记,基于Exynos 4412开发板,一部分内容是总结,一部分是查资料所得,大家可以自由转载,但请注明出处! ...

  4. Linux下几种常见压缩方式测试对比

    目录 Linux下几种常见压缩方式测试对比 参考 简介 测试 总结 Linux下几种常见压缩方式测试对比

  5. linux下如何打包压缩?解包解压?.tar文件.gz文件

    ===文件打包.压缩 ==打包 tar [root@521478.com]# tar -cvf etc1.tar /etc //c创建 v详细 f打包后文件名 [root@521478.com]# t ...

  6. 《OD学hadoop》在LINUX下如何将tar压缩文件解压到指定的目录下

    linux下tar命令解压到指定的目录 :#tar zxvf /bbs.tar.zip -C /zzz/bbs //把根目录下的bbs.tar.zip解压到/zzz/bbs下,前提要保证存在/zzz/ ...

  7. linux在文件打包和压缩

    1. 打包和压缩文件 linux现在经常使用gzip和bzip2要压缩的文件.tar压缩文件. 经常使用的扩展: *.gz   gzip压缩文件 *.bz2  bzip2压缩的文件 *.tar   t ...

  8. linux下各种文件格式的压缩以及解压缩命令

    From : http://blog.csdn.net/mu0206mu/article/details/17732857 -------------------------------------- ...

  9. linux的文件打包与压缩

    简介 Linux 上常用的压缩/解压工具,介绍了zip.rar.tar的使用. 文件打包和压缩 Linux 上的压缩包文件格式,除了 Windows 最常见的*.zip.*.rar..7z 后缀的压缩 ...

随机推荐

  1. hdu_1031_结构体排序

    题目很好理解,将列求和,取前k大的 我的代码思路:对列求和,后取出前k大的id加入结果数组,对比后面和第k大相同的评分id也加入到结果数组,最后对结果数组排序 代码: #include<cstd ...

  2. 一步步教你创建自己的数字货币(代币)进行ICO

    本文从技术角度详细介绍如何基于以太坊ERC20创建代币的流程. 写在前面 本文所讲的代币是使用以太坊智能合约创建,阅读本文前,你应该对以太坊.智能合约有所了解,如果你还不了解,建议你先看以太坊是什么 ...

  3. 面试(2)-java-se-HashSet和TreeSet12

    Set是java中一个不包含重复元素的collection.更正式地说,set 不包含满足 e1.equals(e2) 的元素对 e1 和 e2,并且最多包含一个 null 元素.正如其名称所暗示的, ...

  4. CMD命令操作MySql数据库详解

    第一:mysql服务的启动和停止 1.  net stop mysql 2.  net start mysql 第二:登录 mysql –u用户名 [–h主机名或者IP地址] –p密码 例如:mysq ...

  5. nxlog4go 简介 - 基于log4go的下一代go语言日志系统

    nxlog4go的项目网址: https://github.com/ccpaging/nxlog4go 项目历史 ccpaging's log4go forked from https://githu ...

  6. href

    <a href="#"></a>点击浏览器会跳转地址栏加了#:<a href=""></a>点击会打开当前网页所 ...

  7. mysql 中文乱码

  8. mysql的水平拆分和垂直拆分

    转:http://www.cnblogs.com/sns007/p/5790838.html 1,水平分割: 例:QQ的登录表.假设QQ的用户有100亿,如果只有一张表,每个用户登录的时候数据库都要从 ...

  9. 安装python的注意事项

    第一步: 下载安装文件  python-3.5.2.exe 第二步: 点击安装,下一步继续 第三步: 配置环境变量,记住第一次安装时的路径. 第四步: 测试,打开CMD,输入python.若未找到命令 ...

  10. The server's host key is not cached in the registry. You have no guarantee that the server……

    使用putty中的pscp.exe ,可以通过脚本方式实现windows向linux上传文件,但pscp.exe第一次运行时必须手工输入确认信息,本文主要解决掉初次运行时的人工交互,彻底实现静默运行. ...