Linux通过命令压缩与解压缩的方法| tar, tar.gz, tar.bz2

所属分类: 脚本专栏 / linux shell 阅读数: 367
收藏 0 赞 0 分享

我最开始用 Linux 的时候,不是在 cd、mkdir 之类的这些命令受到了阻碍,因为这类命令在 windows 的 DOS 下也经常性使用,所以很容易上手。但是,碰到了压缩文件的时候,我就一脸懵逼,因为在 windows 下,“压缩与解压缩”只需要双击文件就可以了,而在 Linux 上,在图形界面双击压缩文件,打开的是“归档管理器”,什么鬼?从来没听说过归档,后来才知道就跟 win 下的 winrar 一样的。所以,在对文件的压缩与解压缩方面,我是看了一些文章来理解的(不爱看看书爱直接上手折腾的少年,遇到问题只爱百度谷歌解决)。

在学习压缩和解压缩之前。首先,要了解一下打包、压缩、解压缩的基本概念。

打包文件:一看到 .tar  作为后缀的文件,就是打包文件。

压缩文件:一看到 .tar.gz 或者 .tar.bz2 作为后缀的文件,就是压缩文件。

解包:对打包文件进行解包还原成打包前的文件。

压缩:对打包文件进行压缩然后生成压缩文件。

解压缩:读压缩文件进行解压和解包还原回打包前的文件。

一般情况下,压缩是在打包的基础上的,换句话说,要压缩就要先打包再压缩。tar 的全称是“Tape Archive”,中文意思是“磁带归档”,所以 Linux 下的打包与解压软件一般叫“归档管理器”。既然 tar 是打包的意思,那么 gz 和 bz2  是什么?gz 和 bz2 是两种压缩算法,压缩后的文件分别为 gzip  和  bzip2。其中 bz2算法 比 gz算法 压缩效果更好,所以,如果要选择的话,建议将需要压缩的文件用 bz2算法 压缩。不管 bz2 还是 gz,最好对 打包后的文件.tar  进行压缩。

有了上面的基础概念,可以学习打包、解包、压缩、解压缩的命令了。

命令格式:tar -参数 生成文件 目标文件

1、打包:

    tar -cvf 打包文件名.tar 目标文件或目录

2、gzip 压缩:

    tar -czvf 压缩文件名.tar.gz 目标文件或目录

3、bzip2 压缩:

    tar -cjvf 压缩文件名.tar.bz2 目标文件或目录

4、解包:

    tar -xvf 打包文件名.tar -C 解包到指定目录

5、gzip 解压:

    tar -xzvf 打包文件名.tar.gz -C 解压到指定目录

6、bzip2 解压:

    tar -xjvf 打包文件名.tar.bz2 -C 解压到指定目录

注:以上4 5 6命令的【 -C 解压到指定目录】可忽略,忽略就解压到当前文件夹

=======================================================

举个栗子:

假设当前目录我有一个文件夹 hello

我要压缩成 hello.tar.bz2,则在终端执行命令:tar -cjvf hello.tar.bz2 hello

如要解压 hello.tar.bz2 到 /home 目录,则在终端执行命令:tar -xjvf hello.tar.bz2 -C /home

============================================================================

如果 tar 版本大于1.22,直接一条命令  tar -xvf 解压文件  就足矣解压一切格式压缩包。

以上就是用 tar命令 进行打包、解包、压缩、解压缩最简单的用法。希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

更多精彩内容其他人还在看

php编译安装常见错误大全和解决方法

这篇文章主要介绍了php编译安装常见错误大全和解决方法,需要的朋友可以参考下
收藏 0 赞 0 分享

Linux base shell重定向详解

这篇文章主要介绍了Linux base shell重定向的相关资料,并用一个简明例子总结了常见用法(在第三节),需要的朋友可以参考下
收藏 0 赞 0 分享

Linux Shell 常见的命令行格式简明总结

这篇文章主要介绍了Linux Shell 常见的命令行格式简明总结,非常实用,需要的朋友可以参考下
收藏 0 赞 0 分享

Shell 命令替换的两种方式

这篇文章主要介绍了Shell 命令替换的两种方式,需要的朋友可以参考下
收藏 0 赞 0 分享

Python创建、删除桌面、启动组快捷方式的例子分享

这篇文章主要介绍了Python创建、删除桌面、启动组快捷方式的例子分享,需要的朋友可以参考下
收藏 0 赞 0 分享

shell基础学习中的字符串操作、for循环语句示例

这篇文章主要介绍了shell基础学习中的字符串操作、for循环语句示例
收藏 0 赞 0 分享

shell脚本中28个特殊字符的作用简明总结

这篇文章主要介绍了shell脚本中28个特殊字符的作用简明总结,需要的朋友可以参考下
收藏 0 赞 0 分享

linux shell流程控制语句实例讲解(if、for、while、case语句实例)

linux shell有一套自己的流程控制语句,其中包括条件语句(if),循环语句(for,while),选择语句(case)。下面我将通过例子介绍下,各个语句使用方法
收藏 0 赞 0 分享

分享一个实用的iptables脚本(各种过滤写法参考)

这篇文章主要介绍了分享一个实用的iptables脚本(各种过滤写法参考),需要的朋友可以参考下
收藏 0 赞 0 分享

shell脚本实现ssh自动登录功能分享

mac下没有找到好用的类似secureCRT,就自己写了个自动登录的脚本,分享一下,如果是新浪的,就基本不用修改代码就直接能用
收藏 0 赞 0 分享
查看更多