linux 压缩解压缩

压缩解压缩

linux中压缩和解压文件也是很常见的

zip格式

zip格式的压缩包在windows很常见,linux中也有zip格式的压缩包

#压缩
#zip [选项] 压缩包名 文件(多个文件空格隔开)
zip 1.zip 123.txt 456.txt
 
zip -r 2.zip /home/user1

 ----------------------
 -r 压缩目录
 
 #解压缩
 unzip [选项] 压缩包名
 --------------------
 -d  指定解压缩位置

gz格式

gz格式在linux中是一种很常用的格式,gzip不支持压缩目录

#压缩
#gzip [选项] 源文件
gzip test.txt

#解压
gzip -d test.txt.gz

----------------------
选项
-d  解压缩
-c  将源文件输出到控制台
-r  压缩目录(也是将该目录下的文件分别压缩)
-t  检查命令参数中的压缩文件的完整性
-v  显示每个压缩文件的名字和压缩率
-N N取1-9,表示压缩等级
-f 强制压缩
-l 压缩文件使用的参数,列出每个压缩文件如下内容
      compressed size  压缩文件长度
      uncompressed size 压缩前文件的长度
      ratio  压缩率
      uncompressed-name  压缩前文件名
gzip压缩之后源文件就不见了,且不支持将多个文件压缩至一个压缩包中,压缩包的名称为源文件名称+.gz

bz2格式

bzip2可以提供比gzip更高的压缩率,但是压缩速度变慢了

#压缩
#bzip2 [选项] 源文件
bzip2 123.txt

#解压缩
bzip2 -d 123.txt.bz2

---------------------------
选项
-d  解压缩
-z  压缩
-v  显示压缩时详细信息
-k  压缩时保留原文件
-c  直接输出到控制台
该格式不可以压缩目录

tar格式

由于多个文件一起压缩打包gzip和bz2无法完成,需要使用tar,但是tar命令只可以打包,不会压缩

#压缩
#tar [选项] [-f 压缩名] 源文件
tar -cvf 11.tar 123.txt
-------------------------------
选项
-c 打包
-f 压缩名,如果多个参数组合的情况下带有-f,f放在最后
-v 显示打包过程
-z  是否同时用gzip压缩
-j  是否同时用bzip2压缩
-- exclude filename  在打包时,不要讲filename文件包括在内

#解压缩
#tar [选项] 压缩包
tar -xvf 11.tar

---------------------
选项

-f 压缩名
-v 显示解压缩过程
-x 解压缩
-t 查看包中有哪些文件,不解压

tar.gz和tar.bz2格式

由于tar格式只会打包不会压缩,而gzip和bz2只会压缩不会打包,所以将两者结合了一下,先进行tar打包,在进行gzip压缩,但是如果每次压缩和解压都要两步操作太麻烦了,所以出现了.tar.gz和.tar.bz2格式

#压缩
#tar [选项] [-f 压缩名] 源文件
tar -zcvf 11.tar.gz 123.txt
-------------------------------
选项
-z 压缩和解压缩tar.gz格式(仅用于识别格式),为gzip格式
-j 压缩和解压缩tar.bz2格式(仅用于识别格式),为bzip2格式
-c 打包
-f 压缩名
-v 显示打包过程

#解压缩
#tar [选项] 压缩包
tar -zxvf 11.tar

---------------------
选项
-z 压缩和解压缩tar.gz格式(仅用于识别格式)
-j 压缩和解压缩tar.bz2格式(仅用于识别格式)
-f 指定需要解压的文件
-v 显示解压缩过程
-x 解压缩
-t 查看包中有哪些文件,不解压
-d 指定解压的目录
https://zhhll.icu/2021/linux/基础/压缩解压缩/

本文由mdnice多平台发布

你可能感兴趣的:(程序员)