admin 管理员组文章数量: 1184232
一、压缩格式
市面上有非常多的压缩格式
- zip格式:Linux、Windows、MacOs, 常用
- 7zip格式:Windows系统常用
- rar格式:Windows系统常用
- tar格式:Linux、 MacOS常用
- gzip格式:Linux、MacOS常用
(1).tar 文件格式( Tape Archive )
- 操作对象:既可以是文件,也可以是目录
- 作用:仅将多个文件/目录打包成一个单独的文件,不进行压缩,文件体积基本和原文件总和一致
(2).gz 文件格式( Gzip )
- 操作对象:只能是单个文件
- 作用:对单个文件进行压缩,能显著减小文件体积,但无法直接压缩目录(必须先把目录打包成 .tar 文件,再用gzip压缩)
- 核心限制:只能压缩单个文件,不能处理多个文件/目录
- 压缩命令: gzip 文件名 (例: gzip myfile.tar ,会生成 myfile.tar.gz 并删除原 .tar 文件)
(3).tar.gz 文件格式
这是Linux中最常用的压缩包格式,先通过 tar 打包,再通过 gzip 压缩,兼具“打包”和“压缩”的双重效果
二、tar 命令
命令结构: tar [-c -ν -x -f -z -C] 参数1 参数2..参数N
- [-c]: 创建压缩文件,用于压缩模式
- [-v]: 显示压缩、解压过程,用于查看进度
- [-z]: gzip模式,不使用-z就是普通的tarball格式, 一般放在开头
- [-x]: 解压模式 (与 -c 冲突,故不并用)
- [-C]: 选择解压的目的地 (目录) ,用于解压模式
- [-f]: 要创建的文件,或要解压的文件, -f 选项必须在所有选项中位置处于最后一个
常用组合:
(1) (打包) tar -cvf test.tar one.txt two.txt three.txt
将 one.txt two.txt three.txt 打包到 test.tar 文件中
注意:后面接的第一个参数是打包后的文件,之后所有的都是被 打包 文件
(2) (压缩) tar -zcvf test.tar.gz one.txt two.txt three.txt
将 one.txt two.txt three.txt 打包加压缩到 test.tar.gz 文件中
(3) (解压) tar -xvf test.tar
解压 test.tar 文件,到当前目录
(4) (解压) tar -xvf test.tar -C ~/xtest
解压 test.tar 文件,到指定目录(/home/zinc/xtest)
(5) (解压) tar -zxvf test.tar.gz -C ~/xtest
解压 test.tar.gz 文件,到指定目录(/home/zinc/xtest)
三、zip既打包又压缩
命令结构: zip [-r] 参数1 参数2..参数N [-x] 参数1 参数2..参数N
- [ -r ]: 当要包含目录内文件时使用,不然只会打包目录本身,不包含里面文件
- 参数1: 一个带.zip后缀的新生成文件
- 剩余参数: 被打包文件
- [ -x ]: 排除文件,尽量加""包裹,以免使用通配符*时出错(路径要与被压缩文件对应)
例如:
(1) zip -r test.zip xtest ztest
将 普通文件ztest 和 目录xtest 压缩到 test.zip 文件中
(2) zip -r test.zip ztest xtest -x "xtest/one.txt"
将 普通文件ztest 和 目录xtest 压缩到 test.zip 文件中,并排除 xtest 中的 one.txt 文件
四、unzip 解压.zip
命令结构: unzip [-q -l ] 被压缩文件 [包内个别文件] [-d] 压缩目的地
- [-q]: 静默解压,不输出任何信息(适合脚本中使用)
- [-l]: 不解压,只查看压缩包内信息
- [-d]: 指定目标目录,不存在时会自动创建(同名会替换)
- [包内个别文件]: 选择性解压,最好先-l 查看包内路径,路径需对应
例如:
(1) unzip test.zip xtest/three.txt -d 3.txt
将 test.zip 中的 xtest/three.txt 文件解压到此目录的 3.txt 目录中(会保留原目录结构)
(2) unzip test.zip "xtest/*.txt" -d tong.txt
将 test.zip 中的 xtest/three.txt 和xtest/two.txt 解压到此目录的 tong.txt 目录中(会保留原目录结构)
版权声明:本文标题:压缩包初体验:理解并操作tar, zip与unzip 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/b/1770941548a3539309.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论