Linux 解压缩与压缩,你懂了吗?


前言

提示:学习Linux中的解压缩命令


提示:以下是本篇文章正文内容

一、压缩是什么?

压缩与解压缩;
你知道什么是压缩吗?
一个较大的文件经压缩后,产生了另一个较小容量的文件。而这个较小容量的文件,我们就叫它是这些较大容量的(可能一个或一个以上的文件)的压缩文件。而压缩此文件的过程称为文件压缩。
反之将压缩后的文件还原成原来的文件,压缩的逆行为就是解压缩。

二、Linux中的压缩命令

#.压缩类型

主要类型如下:

*.gz	gzip程序压缩的文件
*.bz2	bzip2程序压缩的文件
*.tar	tar程序打包的数据,并没有经过压缩
*.tar.gz	tar程序打包的文件,其中经过gzip的压缩
*.tar.bz2	tar程序打包的文件,其中经过bzip2的压缩



1.压缩与解压缩主要命令

1. gzip

(命令规则):

压缩文件gzip:        
gzip 文件名(原文件不存在)
gzip -c 文件名1 >文件名1.gz (保留原文件)

解压文件:    
gzip -d 文件名.gz(不保留)
gunzip 文件名.gz
gzip -cd 文件名2.gz >文件名2(保留原文件)

查看压缩过的文本文件内容:zcat 文件名.gz

2. bzip2

(命令规则):

压缩文件bzip2(用法同gzip):
bzip2 文件名
bzip2 -c 文件名1 >文件名1.bz2(保留原文件)

解压文件: 
bzip2 -d 文件名.bz2(不保留原文件)
bunzip2 文件名.bz2
bzip -cd 文件名2.bz2 > 文件名2(保留原文件)

查看压缩过的文件内容:bzcat 文件名.bz2

3.tar

文件的归档即打包文件
tar [主选项+辅选项] 文件或目录

主选项:只能出现一个主选项
 c---  create 创建一个新归档文件 
x---  从归档文件中提取文件出来
t---  列出归档文件的内容,查看已经打包了哪些文件,重点在查看文件名

辅选项
z---通过gzip的支持进行压缩/解压缩,一般格式为*.tar.gz
j---  通过bzip2的支持进行压缩/解压缩,一般格式为*.tar.bz2
v---  归档或解包过程中显示被打包的文件
C---这个参数用在解压缩时,若要在特定目录解压缩,可以使用这个参数
f---  输出结果到文件,必须写该选项
--exclude FILE:在打包的过程中,不要将 FILE 打包!*(排除某个文件打包)*

一般较常使用的结合上述主辅选项
就是两种压缩方式:jcvf zcvf

打包压缩:
打包、压缩文件12并重命名:
tar zcvf 新文件名 文件名1 文件名2 文件名3 文件名4
解压:
解压:tar xvf 文件名    
该命令会自动判断归档文件的压缩格式,自动调用相关程序进行解压缩        

解压到指定路径:
tar xvf 文件名 -C 目标路径

tar -xjv -f filename.tar.bz2 -C 欲解压缩的目录

查看已压缩文件:
tar tf 文件名


以上就是针对于上述五种类型的常用压缩和解压缩命令、
可以这么理解:gzip bzip2 只是单独的对于文件进行压缩和解压缩,但是对于tar 来说。它更强大一点,可以打包数据 但是不压缩,也可以通过调用上述两个参数来达到解压缩的效果以及更多的操作。



附录1

针对于其他的一些文件类型的解压方法:

.Z
解压:uncompress FileName.Z
压缩:compress FileName

.tar.Z
解压:tar Zxvf FileName.tar.Z
压缩:tar Zcvf FileName.tar.Z DirName
.zip
解压:unzip FileName.zip
压缩:zip FileName.zip DirName
.rar
解压:rar x FileName.rar
压缩:rar a FileName.rar DirName
.lha
解压:lha -e FileName.lha
压缩:lha -a FileName.lha FileName
.rpm
解包:rpm2cpio FileName.rpm | cpio -div
.deb
解包:ar p FileName.deb data.tar.gz | tar zxf -
.tar .tgz .tar.gz .tar.Z .tar.bz .tar.bz2 .zip .cpio .rpm .deb .slp .arj .rar .ace .lha .lzh .lzx .lzs .arc .sda .sfx .lnx .zoo .cab .kar .cpt .pit .sit .sea
解压:sEx x FileName.*
压缩:sEx a FileName.* FileName

sEx只是调用相关程序,本身并无压缩、解压功能,请注意!

总结

提示:这里对文章进行总结:
以上就是对于Linux中常见的压缩和解压缩的介绍,希望大家可以通过这个更好的使用Linux 以上就是对于Linux中常见的压缩和解压缩的介绍,希望大家可以通过这个更好的使用Linux @TOC