详谈Linux打包与压缩及tar命令

打包和压缩

在linux中,打包和压缩可以说是两个不同的概念,弄清这两个概念对于我们理解复杂的文件后缀有非常大的帮助

打包

将若干个文件和目录打包在一起变成一个大的文件,这时只是简单的打包,所以一般打包后的文件大小比被打包的文件总和还大

压缩

将一个文件根据一定的算法变成一个小文件,压缩比用来衡量压缩前与压缩后的文件大小比值

压缩

在linux中主要有三个压缩命令gzip、bzip2、xz,它们各自采用不同的压缩算法,说明及常用参数如下:

压缩命令 gzip bzip2 xz
文件名后续 .gz .bz2 .xz
参数-d 解压缩 解压缩 解压缩
参数-k -- 压缩时保留原文件 压缩时保留原文件
相应的解压命令 gunzip bunzip2 unxz
相应的不解压查看文件内容命令 zcat bzcat xcat

注意:这三个命令只能对单个文件进行压缩,并且默认情况下如果不指定参数,都会把原文件删除

打包

打包命令最常用的当属tar命令,而且它还可以调用上面提到的三个压缩命令,故用的频率非常之高,我们来看下tar的一些常用参数

常用参数

-f: 要操作的归档文件,如-f file.tar
-c:创建归档文件
-r:增加文件到归档文件中
-u:更新归档中的文件
-x:展开归档
-t:不解压,直接查看归档了哪些文件

打包示例

将所有.png的文件打包成一个名为allpic.tar
tar -cf allpic.tar *.png

将所有.jpg结尾的文件追加到文件allpic.tar中
tar -rf allpic.tar *.jpg

更新allpic.tar中的front.jpg文件
tar -uf allpic.tar front.jpg

列出allpic.tar包中的所有文件(并没有解压)
tar -tf allpic.tar

解压出allpic.tar中的所有文件
tar -xf allpic.tar

压缩示例

tar有选项就是它可以在打包后再调用上面提到的三种压缩方式对打包后的文件进行压缩,

gzip对应参数-z 或--gzip

bzip2对应参数-j 或--bzip2

xz对应参数-J 或--xz

所以我们只需要在上面的参数-c(创建打包)或-x(解压文件)命令中加入对应的参数,并且文件后缀改一下就可以实现打包并压缩和解压的功能了,改成不同的后缀只是方便我们人眼识别,不改也没有关系,要查看文件是什么压缩类型的只要用file命令就可以。

调用gzip压缩和解压缩

将所有.png的文件打包并压缩成一个名为allpic.tar.gz文件
tar -czf allpic.tar.gz *.png

列出allpic.tar.gz中的所有文件
tar -tzf allpic.tar.gz

将allpic.tar.gz文件解压到当前目录
tar -xzf allpic.tar.gz

调用bzip2压缩和解压缩

将所有.png的文件打包并压缩成一个名为allpic.tar.gz文件
tar -cjf allpic.tar.bz2 *.png

列出allpic.tar.gz中的所有文件
tar -tjf allpic.tar.bz2

将allpic.tar.bz2文件解压到当前目录
tar -xjf allpic.tar.bz2

调用xz压缩和解压缩

将所有.png的文件打包并压缩成一个名为allpic.tar.gz文件
tar -cJf allpic.tar.xz *.png

列出allpic.tar.gz中的所有文件
tar -tJf allpic.tar.xz

将allpic.tar.bz2文件解压到当前目录
tar -xJf allpic.tar.xz

各种文件后缀解压示例总结

我们经常需要的是下载到一个文件,如何解压的问题,那么下面再作个归类总结:

对于.tar结尾的文件
tar -xf allpic.tar

对于tar.gz或.tgz结尾的文件
tar -zxf allpic.tar.gz

对于tar.bz2结尾的文件
tar -jxf allpic.tar.bz2

对于tar.xz结尾的文件
tar -Jxf allpic.tar.xz

对于.gz结尾的文件,而不是tar.gz的文件
gzip -d allpic.gz
gunzip allpic.gz

对于.gz .bz2 .xz结尾,而没有前面没有tar的文件,可以参数上述的表格,如
gzip -d mypic.gz
bzip2 -d mypic.bz2
xz -d mypic.xz

gunzip mypic.gz
bunzip2 mypic.bz2
unxz mypic.xz

对于.zip文件结尾(windows下常见)
unzip allpic.zip

对于.rar文件结尾
unrar e allpic.rar

以上这篇详谈Linux打包与压缩及tar命令就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • Linux下的tar压缩解压缩命令详解(小结)

    tar -c: 建立压缩档案 -x:解压 -t:查看内容 -r:向压缩归档文件末尾追加文件 -u:更新原压缩包中的文件 这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个.下面的参数是根据需要在压缩或解压档案时可选的. -z:有gzip属性的 -j:有bz2属性的 -Z:有compress属性的 -v:显示所有过程 -O:将文件解开到标准输出 下面的参数-f是必须的 -f: 使用档案名字,切记,这个参数是最后一个参数,后面只能接档案名. # tar -cf all.

  • Linux tar 压缩打包命令使用方法第1/2页

    tar命令  [root@linux ~]# tar [-cxtzjvfpPN] 文件与目录 -. 参数: -c :建立一个压缩文件的参数指令(create 的意思): -x :解开一个压缩文件的参数指令! -t :查看 tarfile 里面的文件! 特别注意,在参数的下达中, c/x/t 仅能存在一个!不可同时存在! 因为不可能同时压缩与解压缩. -z :是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩? -j :是否同时具有 bzip2 的属性?亦即是否需要用 bzip2 压缩

  • Linux解压缩命令简介及解压缩命令使用

    一.解压缩命令简介 tar命令 -c: 建立压缩档案 -x:解压 -t:查看内容 -r:向压缩归档文件末尾追加文件 -u:更新原压缩包中的文件 这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个.下面的参数是根据需要在压缩或解压档案时可选的. -z:有gzip属性的 -j:有bz2属性的 -Z:有compress属性的 -v:显示所有过程 -O:将文件解开到标准输出 下面的参数-f是必须的 -f: 使用档案名字,切记,这个参数是最后一个参数,后面只能接档案名. #

  • 浅析Linux打包压缩解压缩命令大全(收藏)

    下面是小编日常收集整理的关于linux打包压缩解压缩命令大全,具体内容如下所述: tar命令 解包:tar zxvf FileName.tar 打包:tar czvf FileName.tar DirName gz命令 解压1:gunzip FileName.gz 解压2:gzip -d FileName.gz 压缩:gzip FileName .tar.gz 和 .tgz 解压:tar zxvf FileName.tar.gz 压缩:tar zcvf FileName.tar.gz DirNa

  • Linux下的压缩与解压缩命令详细解析

    linux zip命令 zip -r myfile.zip ./*将当前目录下的所有文件和文件夹全部压缩成myfile.zip文件,-r表示递归压缩子目录下所有文件. 2.unzipunzip -o -d /home/sunny myfile.zip把myfile.zip文件解压到 /home/sunny/-o:不提示的情况下覆盖文件:-d:-d /home/sunny 指明将文件解压缩到/home/sunny目录下: 3.其他zip -d myfile.zip smart.txt删除压缩文件中

  • PHP调用Linux的命令行执行文件压缩命令

    前几天工作中,需要将3个txt文件,打包成*.zip down到本地-- 一开始,我和普通青年一样,想到用PHP内置的 ZipArchive,代码看起来应该是这样的: 复制代码 代码如下: /*拆分成3个txt文件 分别是wow_1.txt wow_2.txt 和 wow_3.txt*/ $zip=new ZipArchive(); $zipfile='./Exl_file/wow.zip'; if($zip->open($zipfile,ZIPARCHIVE::CREATE)===TRUE){

  • 详谈Linux打包与压缩及tar命令

    打包和压缩 在linux中,打包和压缩可以说是两个不同的概念,弄清这两个概念对于我们理解复杂的文件后缀有非常大的帮助 打包 将若干个文件和目录打包在一起变成一个大的文件,这时只是简单的打包,所以一般打包后的文件大小比被打包的文件总和还大 压缩 将一个文件根据一定的算法变成一个小文件,压缩比用来衡量压缩前与压缩后的文件大小比值 压缩 在linux中主要有三个压缩命令gzip.bzip2.xz,它们各自采用不同的压缩算法,说明及常用参数如下: 压缩命令 gzip bzip2 xz 文件名后续 .gz

  • Linux shell命令用法及常见用例之tar命令

    前言 tar命令用来归档多个文件或目录到单个归档文件中,并且归档文件可以进一步使用gzip或者bzip2等技术进行压缩. 命令格式 tar [OPTION...] [FILE]... 命令功能 Tar(Tape ARchive,磁带归档的缩写,最初设计用于将文件打包到磁带上,现在大都使用它来实现备份某个分区或者某些重要的目录)是类Unix系统中使用最广泛的命令,用于归档多个文件或目录到单个归档文件中,并且归档文件可以进一步使用gzip或者bzip2等技术进行压缩,还能保留其文件权限.换言之,ta

  • Linux下的压缩文件剖析

    对于刚刚接触Linux的人来说,一定会给Linux下一大堆各式各样的文件名给搞晕.别个不说,单单就压缩文件为例,我们知道在Windows下最常见的压缩文件就只有两种,一是,zip,另一个是.rap.可是Linux就不同了,它有.gz..tar.gz.tgz.bz2..Z..tar等众多的压缩文件名,此外windows下的.zip和.rar也可以在Linux下使用,不过在Linux使用.zip和.rar的人就太少了.本文就来对这些常见的压缩文件进行一番小结,希望你下次遇到这些文件时不至于被搞晕:)

  • linux下用tar命令将当前目录下文件按子目录压缩归档的实现

    日常工作中,我们常常需要用tar命令将历史文件压缩归档,再删除源文件,以便节省空间.如果压缩归档成一个文件,就比较简单,用一条命令即可,如命令:tar -czf bak2013.tgz t2013/*就将t2013目录下所有的文件打包成一个压缩文件.但这样的文件往往太大,使用起来也不方便,这时如果能将t2013目录下的文件按子目录打包,一个子目录一个文件,这样就方便使用了. 实现这样的功能当然不可能是一条命令,用下面这个脚本就可以了: # get directory name subdir=`l

  • linux tar命令简介

    一.使用介绍 tar命令用来打包,解包和压缩. 1.名词区分 打包:将一大堆文件或目录变成一个总的文件[tar命令] 压缩:将一个大的文件通过一些压缩算法变成一个小文件[gzip,bzip2等] Linux中很多压缩程序只能针对一个文件进行压缩,这样当你想要压缩一大堆文件时,你得将这一大堆文件先打成一个包(tar命令),然后再用压缩程序进行压缩(gzip bzip2命令). 2.tar语法 语法:tar [主选项+辅选项] 文件或目录 使用该命令时,主选项必须有,它告诉tar要做什么事情,辅选项

  • linux下的tar命令详细解释

    tar命令 [root@Linux ~]# tar [-cxtzjvfpPN] 文件与目录 .... 参数: -c :建立一个压缩文件的参数指令(create 的意思): -x :解开一个压缩文件的参数指令! -t :查看 tarfile 里面的文件! 特别注意,在参数的下达中, c/x/t 仅能存在一个!不可同时存在! 因为不可能同时压缩与解压缩. -z :是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩? -j :是否同时具有 bzip2 的属性?亦即是否需要用 bzip2 压

  • linux 命令每天必学之tar命令

    通过SSH访问服务器,难免会要用到压缩,解压缩,打包,解包等,这时候tar命令就是是必不可少的一个功能强大的工具.linux中最流行的tar是麻雀虽小,五脏俱全,功能强大. tar命令可以为linux的文件和目录创建档案.利用tar,可以为某一特定文件创建档案(备份文件),也可以在档案中改变文件,或者向档案中加入新的文件.tar最初被用来在磁带上创建档案,现在,用户可以在任何设备上创建档案.利用tar命令,可以把一大堆的文件和目录全部打包成一个文件,这对于备份文件或将几个文件组合成为一个文件以便

  • Linux tar命令使用列子第1/2页

    用tar建立存档 tar是"tape archive"(磁带存档)的简称,它出现在还没有软盘驱动器.硬盘和光盘驱动器的计算机早期阶段.那时软件的发行和备份都需要大卷的磁带,计算机上运行的头几个程序中就得有一个是磁带的阅读程序.随着时间的推移, tar命令逐渐变为一个将很多文件进行存档的工具,目前许多用于Linux操作系统的程序就是打包为tar档案文件的形式. tar 命令的格式是: tar [option] <file>; tar命令有很多参数,利用f选项.设备或文件的名字

随机推荐