博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Linux怎么通过命令压缩与解压缩 | tar, tar.gz, tar.bz2
阅读量:2198 次
发布时间:2019-05-03

本文共 1431 字,大约阅读时间需要 4 分钟。

我最开始用 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命令 进行打包、解包、压缩、解压缩最简单的用法。

转载地址:http://bbqub.baihongyu.com/

你可能感兴趣的文章
剑指offer 20.顺时针打印矩阵
查看>>
剑指offer 21.包含min函数的栈
查看>>
剑指offer 23.从上往下打印二叉树
查看>>
剑指offer 25.二叉树中和为某一值的路径
查看>>
剑指offer 60. 不用加减乘除做加法
查看>>
Leetcode C++《热题 Hot 100-14》283.移动零
查看>>
Leetcode C++《热题 Hot 100-15》437.路径总和III
查看>>
Leetcode C++《热题 Hot 100-17》461.汉明距离
查看>>
Leetcode C++《热题 Hot 100-18》538.把二叉搜索树转换为累加树
查看>>
Leetcode C++《热题 Hot 100-21》581.最短无序连续子数组
查看>>
Leetcode C++《热题 Hot 100-22》2.两数相加
查看>>
Leetcode C++《热题 Hot 100-23》3.无重复字符的最长子串
查看>>
Leetcode C++《热题 Hot 100-24》5.最长回文子串
查看>>
Leetcode C++《热题 Hot 100-28》19.删除链表的倒数第N个节点
查看>>
Leetcode C++《热题 Hot 100-29》22.括号生成
查看>>
Leetcode C++《热题 Hot 100-47》236.二叉树的最近公共祖先
查看>>
Leetcode C++《热题 Hot 100-48》406.根据身高重建队列
查看>>
《kubernetes权威指南·第四版》第二章:kubernetes安装配置指南
查看>>
Leetcode C++《热题 Hot 100-49》399.除法求值
查看>>
Leetcode C++《热题 Hot 100-51》152. 乘积最大子序列
查看>>