linux压缩与解压

zip

zip -r xxx.zip ./*unzip filename

unzip

解压时指定字符集

解压windows下压缩的zip包:

unzip -O CP936 xxx.zip (用GBK, GB18030也可以) 

gzip

-a或--ascii  使用ASCII文字模式。-d或--decompress或----uncompress  解开压缩文件。-l或--list  列出压缩文件的相关信息。-r或--recursive  递归处理,将指定目录下的所有文件及子目录一并处理。-v或--verbose  显示指令执行过程。-V或--version  显示版本信息。

gzip不能压缩目录
想要压缩目录可以使用如下方式:
tar -zcvf test.tar.gz test

GZIP 与zip区别主要是适应系统不同,还有就是压缩率不一样;

gzip为高压,可以把文件压缩得更小
gzip是Linux下面用的格式,一般在Linux下解压,如果用Windows下的程序解压有可能丢失其中某些文件或属性

解压指定编码

乱码场景:
zip是在windows下面打包的,压缩时的编码默认是GBK
在LINUX上解压,用的是UTF-8

gzip -O "GBK"  xxx.zip

tar

命令含义

  1. 打包:将一堆文件或目录什么的变成一个总的文件。
  2. 压缩:将一个大的文件经过某种压缩算法变成一个小文件。

为什么要区分这两个概念呢?因为Linux中的很多压缩程序只能针对一个文件进行压缩,所以当你想要压缩一大堆文件时,首先需要打个包,然后压缩。
tar是打包,gzip、bzip2 是压缩,tar可以在打包后同时调用其他压缩命令。

为了方便用户在打包解包的同时压缩或解压文件,tar命令提供了一种特殊的功能,就是可以在打包解包的同时调用其他的压缩程序,比如:gzip,bzip2等。

使用

-c: 建立压缩档案
-x:解压
-t:查看内容
-r:向压缩归档文件末尾追加文件
-u:更新原压缩包中的文件

这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个。下面的参数是根据需要在压缩或解压档案时可选的。

-z:有gzip属性的
-j:有bz2属性的
-Z:有compress属性的
-v:显示所有过程
-O:将文件解开到标准输出

下面的参数-f是必须的

-f: 使用档案名字,切记,这个参数是最后一个参数,后面只能接档案名。

tar -cf all.tar *.jpg

这条命令是将所有.jpg的文件打成一个名为all.tar的包。-c是表示产生新的包,-f指定包的文件名。

tar -rf all.tar *.gif

这条命令是将所有.gif的文件增加到all.tar的包里面去。-r是表示增加文件的意思。

tar -uf all.tar logo.gif

这条命令是更新原来tar包all.tar中logo.gif文件,-u是表示更新文件的意思。

tar -tf all.tar

这条命令是列出all.tar包中所有文件,-t是列出文件的意思

tar -xf all.tar

这条命令是解出all.tar包中所有文件,-t是解开的意思

压缩

tar -cvf jpg.tar *.jpg

//将目录里所有jpg文件打包成jpg.tar

tar -czf jpg.tar.gz *.jpg

//将目录里所有jpg文件打包成jpg.tar后,并且将其用gzip压缩,生成一个gzip压缩过的包,命名为jpg.tar.gz

tar -cjf jpg.tar.bz2 *.jpg

//将目录里所有jpg文件打包成jpg.tar后,并且将其用bzip2压缩,生成一个bzip2压缩过的包,命名为jpg.tar.bz2

tar -cZf jpg.tar.Z *.jpg

//将目录里所有jpg文件打包成jpg.tar后,并且将其用compress压缩,生成一个umcompress压缩过的包,命名为jpg.tar.Z

rar a jpg.rar *.jpg

//rar格式的压缩,需要先下载rar for linux

zip jpg.zip *.jpg

//zip格式的压缩,需要先下载zip for linux

解压

tar -xvf file.tar //解压 tar包    tar -xzvf file.tar.gz //解压tar.gz    tar -xjvf file.tar.bz2   //解压 tar.bz2    tar -xZvf file.tar.Z   //解压tar.Z    unrar e file.rar //解压rar    unzip file.zip //解压zip

总结

1、*.tartar -xvf 解压    2、*.gzgzip -d或者gunzip 解压    3、*.tar.gz和*.tgztar -xzf 解压    4、*.bz2bzip2 -d或者用bunzip2 解压    5、*.tar.bz2tar -xjf 解压    6、*.Zuncompress 解压    7、*.tar.Ztar -xZf 解压    8、*.rarunrar e解压    9、*.zipunzip 解压

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年10月12日
下一篇 2021年10月12日

相关推荐