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

所属分类: 脚本专栏 / linux shell 阅读数: 404
收藏 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命令 进行打包、解包、压缩、解压缩最简单的用法。希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

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

linux sudo密码输入时显示星号的操作方法

在输入linux sudo密码的时候终端是不显示任何东西的,我们不知道我们按下的密码到底输入进去了没有,如果可以像在网站上登录账号密码的时候显示星号多好,下面小编给大家介绍下linux sudo密码输入时显示星号的操作方法
收藏 0 赞 0 分享

如何让history命令显示日期和时间

我们都对 history 命令很熟悉。它将终端上 bash 执行过的所有命令存储到 .bash_history 文件中,来帮助我们复查用户之前执行过的命令。这篇文章主要介绍了让history命令显示日期和时间的方法,需要的朋友可以参考下
收藏 0 赞 0 分享

shell实现图书管理系统

这篇文章主要介绍了shell实现图书管理系统,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

shell实现学生成绩管理系统

这篇文章主要为大家详细介绍了shell实现学生成绩管理系统,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

shell编程实现学生成绩管理系统

这篇文章主要为大家详细介绍了shell编程实现学生成绩管理系统,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

利用Linux中的crontab实现分布式项目定时任务功能

crond是Linux用来定期执行程序的命令.这篇文章主要介绍了利用Linux中的crontab实现分布式项目定时任务,需要的朋友可以参考下
收藏 0 赞 0 分享

Linux之时钟中断详解

这篇文章主要介绍了Linux之时钟中断详解,分享了相关代码示例,小编觉得还是挺不错的,具有一定借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

linux系统上传下载命令rz和sz的教程

这篇文章主要介绍了linux系统上传下载命令rz和sz的安装测试方法,需要的朋友可以参考下
收藏 0 赞 0 分享

Shell编程之特殊变量的笔记小结

这篇文章主要介绍了Shell编程之特殊变量的笔记小结,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

详解Shell编程之变量数值计算(一)

本篇文章主要介绍了详解Shell编程之变量数值计算,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享
查看更多