Linux——文件压缩和解压
一、zip/unzip指令
zip用于压缩文件。语法:zip 压缩文件名称.zip 要压缩的文件或目录。
压缩目录时要加“ -r ”,递归处理,即将目录下的子目录和文件一并压缩。
例如:
(1)压缩一个普通文件
zip test.zip test.c
(2)压缩一个目录
zip -r dir1.zip dir1
(3)同时压缩多个目录或文件
zip -r dir.zip dir1 test.c
unzip用于解压压缩文件。语法:unzip 压缩文件.zip。
unzip dir.zip
还可以指定解压路径。解压时在压缩文件后加“ -d 指定路径 ”。例如解压到上级目录。
unzip dir.zip -d ..
二、tar指令
最常用的压缩命令:tar -czf 压缩包名.tgz 要压缩的文件或目录。
tar -czf test.tgz test.c
不解压,查看压缩包里有什么:tar -tzf 压缩包名.tgz。
tar -tzf test.tgz
解压:tar -xzf 压缩包名.tgz (-C 指定目录)。
tar -xzf test.tgz -C ..
以上czf、tzf、xzf 是什么呢?tgz是什么呢?
tar 命令的参数通常组合使用,每个字母代表特定功能:c: create ,创建新的压缩包(用于压缩操作)。z:调用 gzip 压缩算法(处理 .tar.gz 或 .tgz 格式)。 f: file ,指定压缩包的文件名(必须放在参数的最后,紧跟文件名)。x: extract ,解压文件(用于解压操作)。t: list ,查看压缩包内的文件列表(不解压)。
因此:czf表示用gzip算法创建压缩包;tzf表示查看压缩包内文件,相当于预览;xzf表示用gzip算法解压压缩包。
tgz是tar.gz的简写。tar压缩文件本质是先由tar打包成 .tar 文件,再用gzip压缩,生成.tar.gz。
注意,zip和gzip是两个概念,gzip只能压缩单个文件,不能压缩目录,生成.gz后缀文件,依赖tar处理目录。 zip可以直接压缩多个文件或目录,压缩后生成.zip后缀文件。