linux压缩和打包的区别,linux压缩和打包

linux压缩和打包

压缩技术一般分为两种:有损压缩和无损压缩。在linux中一般不允许有数据丢死,所以都是无损压缩。

linux中压缩技术一般可以分为两种:

gzipbzip2

gzip

gzip是先于bzip2出现的压缩技术,一般的使用方法如下:

gzip file

file是需要压缩的文件,生成的压缩文件一般会替换原始的文件,压缩文件和原始的文件具有相同的时间属性和权限。

如果想要保留原始的文件,那么可以使用c选项和重定向实现。

gzip -cv file > file.gz

c是将输出定位到标准输出,v是显示压缩过程中的详细信息。

gzip对应的解压缩命令:(目前 gzip 可以解开 compress, zip 与 gzip 等软件所压缩的文件)

gzip -d file.gz (或者使用gunzip命令)

可以使用zcat(参考cat)来直接查看纯文本压缩文件的内容。

bzip2

bzip2是对gzip技术的一种改进,一般具有较好的压缩比,但是速度比较慢。bzip2的使用方式和gzip类似。

不同点:

bunzip2对应的解压缩命令是bunzip2(一般使用bzip2 -d来进行解压缩)

使用bzcat可以查看.bz2文件的内容。

缺点:这些压缩命令通常仅能针对一个文件来压缩与解压缩,虽然 gzip 与 bzip2 也能够针对目录来进行压缩,不过,这两个命令对目录的压缩指的是将目录内的所有文件 "分别" 进行压缩!因此,打包文件显得很有必要。

tar

打包就是把许多文件捆绑成一个大文件的过程,打包文件使用tar命令。tar命令的一般使用方法如下:

打包文件:tar -cv -f filename.tar filename1 filename2 (c选项表示创建打包文件,f指定打包之后生成的文件名,v显示打包的文件信息)

解包文件:tar -xv -f filename.tar (x表示解包打包的文件,f指定打包文件名)

查看打包文件包含的文件 :tar -t -f filename.tar (-t显示打包文件中的文件名)

tar具有以下两个特点:

从打包文件恢复的文件的权限是执行恢复操作的用户的权限,除非你是root用户,此时权限是原始用户的权限。tar 命令特点是它处理归档文件路径名的方式。默认情况下,路径名是相对的,而不是绝对路径。当创建归档文件的时候,tar 命令会简单地删除路径名开头的斜杠。

100759cbfa9896413f36fe6bd0c1af4c.png

从上图中可以看出,在打包文件的时候使用绝对路径时,~/playground会被展开为/home喎?http://www.Bkjia.com/kf/ware/vc/" target="_blank" class="keylink">vcGV0ZXIvcGxheWdyb3VuZKOsy/nS1NfuuvO74b2raG9tZcS/wrzPwrXEzsS8/rTysPyjrLKix9K74cm+s/1ob21lwre+tseww+a1xLj6wre+tqOov7TNvNbQtcS12rb+0NCjqaGjtvjH0tTaveKw/LXEyrG68rvh0tS1scewwre+ts6quLjCt762veKw/KGjCgo8cD48L3A+Cgp0YXLD/MHusru99r7f09C08rD8uabE3KOsz9bU2ru5xNy94brP0bnL9by8yvXSu8bwyrnTw6Os0aHP7i1qyrnTw2d6aXDRucv1o6wtesq508NiemlwMtG5y/Who3RhciDD/MHuvq2zo73hus8gZmluZCDD/MHu0rvG8MC01sbX97G4t93OxLz+oaPNqLn9IGZpbmQgw/zB7salxeTWuLaotcTOxLz+w/u78tXf0MLT2sSzuPbKsbzktMG1xM7EvP6jrM7Sw8e+zcTcubu0tL2o0ru49rnptbXOxLz+o6zA/cjno7oKPHA+ZmluZCBwbGF5Z3JvdW5kIC1uYW1lIA=="file-A' -exec tar rf playground.tar '{}' '+' //r是追加选项

linux中相关的文件名约定:

*.Z compress 程序压缩的文件;

*.gz gzip 程序压缩的文件;

*.bz2 bzip2 程序压缩的文件;

*.tar tar 程序打包的数据,并没有压缩过;

*.tar.gz tar 程序打包的文件,其中并且经过 gzip 的压缩

*.tar.bz2 tar 程序打包的文件,其中并且经过 bzip2 的压缩

另外,tar 打包出来的文件有没有进行压缩所得到文件称呼不同。

tarfile:打包文件 tar -cv -f file.tar tarball:打包并压缩文件 tar -jcv -f file.tar.bz2

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Linux打包压缩是两个不同的概念。打包是将多个文件或目录打包成一个文件,以便于传输或备份。常见的打包工具有tar和cpio。而压缩则是将一个或多个文件压缩成一个更小的文件,以节省存储空间和传输时间。常见的压缩工具有gzip、bzip2和zip等。在Linux中,可以将打包压缩结合起来使用,例如使用tar和gzip一起打包压缩文件。 ### 回答2: Linux打包压缩是两种不同的操作。打包是将多个文件或文件夹打包成一个归档文件,而压缩则是将一个或多个文件压缩成一个更小的文件,以节约存储空间和传输时间。 打包通常使用tar工具,可以打包多个文件或文件夹,并将它们打包成一个.tar文件。例如,要打包当前目录下的所有文件和文件夹,可以使用如下命令: tar -cvf archive.tar * 其中-c表示创建新的归档文件,-v表示显示详细信息,-f后面指定要创建的归档文件的名称,*表示当前目录下的所有文件和文件夹。 压缩则可以使用Linux中的多种压缩工具,如gzip、bzip2和zip等。例如,要将一个文件压缩成gzip格式,可以使用如下命令: gzip file.txt 这将创建一个file.txt.gz压缩文件。同样地,bzip2命令可以压缩成bzip2格式,而zip命令可以创建zip格式的压缩文件。 需要注意的是,tar工具本身不会压缩文件,只是将文件打包成一个.tar文件。如果需要压缩打包后的文件,可以将打包命令和压缩命令合并使用: tar -czvf archive.tar.gz * 其中,-z表示使用gzip压缩,-j表示使用bzip2压缩,-Z表示使用compress压缩。 总之,Linux打包压缩是两个基本的文件处理操作,它们可以方便地将多个文件或文件夹打包压缩成一个单独的文件,以方便存储和传输。需要选择合适的工具和格式,以达到最佳的压缩效果。 ### 回答3: Linux打包压缩是两个不同的概念,虽然它们经常一起使用。打包一般指将多个文件或目录打包成一个文件,并保留原来的层次结构;压缩则是将一个或多个文件用压缩算法进行压缩,以减小它们的体积,方便传输和存储。 在Linux系统中,打包压缩常常用来备份或传输大量的文件。常见的打包命令是tar,它可以将多个文件或目录打包成一个文件,例如: tar -cvf backup.tar /home/user -c参数表示创建一个新的归档文件(archive),-v表示显示详细信息,-f表示指定打包文件名。 而压缩则需要使用压缩算法,常见的有gzip、bzip2、xz等。例如,使用gzip压缩: gzip backup.tar 这样就会生成一个名为backup.tar.gz的压缩文件,体积比原来的文件小很多。 需要注意的是,打包压缩是两个不同的操作,可以单独使用,也可以结合使用。如果需要备份大量文件且不需要压缩,只需使用tar命令即可;如果需要压缩,可以在打包完成后使用相应的压缩命令。例如: tar -cvf backup.tar /home/user gzip backup.tar 这样就会生成一个名为backup.tar.gz的压缩包,内含/home/user目录中的所有文件。同时注意,打包压缩的顺序不能颠倒,必须先打包压缩,否则无法正确解压缩

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值