文件压缩
gzip,zip/unzip,tar,LZ4,LZMA,LZMO,XZ,jar
Ubuntu 19.10(Eoan Ermine)操作系统计划于10月17日正式发布,Ubuntu内核团队对六种压缩方法进行测试,包括BZIP2,GZIP,LZ4,LZMA,LZMO和XZ,以测量Linux内核的加载时间以及解压缩时间。
根据测试结果,LZ4是Ubuntu 19.10(Eoan Ermine)的最佳解压缩方案,BZIP2,LZMA和XZ的解压缩速度很慢,而在压缩大小方面,GZIP效果最好,能将文件压缩至最小,其次是LZO(大约比GZIP大16%)和LZ4(大约比GZIP大25%),而在压缩时间方面,LZ4比GZIP快7倍,LZO比GZIP快约1.25倍,因此可以看到GZIP的速度不够快。
- .tar是打包,.tar.gz才是压缩过的文件.
- tar.gz常见于unix系统,在ubuntu或macos可以直接解压,而.zip常见于windows系统
- 详情可见 .zip和.tar.gz的文件有什么区别?。 - zip原义“速度”,支持分卷压缩、128/256-bit AES加密算法等功能 - tar是“tape archive”(磁带存档)的简称, 在Linux里面,tar一般和其他没有文件管理的压缩算法文件结合使用,用tar打包整个文件目录结构成一个文件,再用gz,bzip等压缩算法压缩成一个
gzip
选项 含义
-c 将压缩数据输出到标准输出中,并保留源文件。
-d 对压缩文件进行解压缩。
-r 递归压缩指定目录下以及子目录下的所有文件。
-v 对于每个压缩和解压缩的文件,显示相应的文件名和压缩比。
-l 对每一个压缩文件,显示以下字段:
压缩文件的大小;
未压缩文件的大小;
压缩比;
未压缩文件的名称。
-数字 用于指定压缩等级,-1 压缩等级最低,压缩比最差;-9 压缩比最高。默认压缩比是 -6。
LZ4
查看帮助
[root@localhost~]# lz4 --help
参数
-1: 快速压缩(默认)
-9: 高压缩
-d: 解压缩(默认为.lz4扩展名)
-z: 强制压缩
-f: 覆盖输出而不提示
-k: 保留源文件(默认)
--rm: 成功地解除/压缩后删除源文件
-h/-h: 显示帮助/长帮助和退出
高级参数
-v: 显示版本号并退出
-v: 详细模式
-q: 取消警告;指定两次也可以取消错误
-c: 强制写入标准输出,即使它是控制台
-t: 测试压缩文件完整性
-m: 多个输入文件(表示自动输出文件名)
-r: 在目录上递归操作(也设置为-m)
-l: 使用旧格式压缩(Linux内核压缩)
https://github.com/lz4/lz4-java
jar
文件解压
UNZIP
一、unzip命令
unzip命令用于解压缩由zip命令压缩的“.zip”压缩包。
1.1 语法
unzip(选项)(参数)
1.2 选项
选项 描述
-c 将解压缩的结果显示到屏幕上,并对字符做适当的转换;
-f 更新现有的文件;
-l 显示压缩文件内所包含的文件;
-p 与-c参数类似,会将解压缩的结果显示到屏幕上,但不会执行任何的转换;
-t 检查压缩文件是否正确;
-u 与-f参数类似,但是除了更新现有的文件外,也会将压缩文件中的其他文件解压缩到目录中;
-v 执行时显示详细的信息;
-z 仅显示压缩文件的备注文字;
-a 对文本文件进行必要的字符转换;
-b 不要对文本文件进行字符转换;
-C 压缩文件中的文件名称区分大小写;
-j 不处理压缩文件中原有的目录路径;
-L 将压缩文件中的全部文件名改为小写;
-M 将输出结果送到more程序处理;
-n 解压缩时不要覆盖原有的文件;
-o 不必先询问用户,unzip执行后覆盖原有的文件;
-P<密码> 使用zip的密码选项;
-q 执行时不显示任何信息;
-s 将文件名中的空白字符转换为底线字符;
-V 保留VMS的文件版本信息;
-X 解压缩时同时回存文件原来的UID/GID;
-d<目录> 指定文件解压缩后所要存储的目录;
-x<文件> 指定不要处理.zip压缩文件中的哪些文件;
-Z unzip-Z等于执行zipinfo指令。
二、示列
unzip test.zip ->将test.zip解压到当前文件下
unzip -n test.zip -d /tmp ->将test.zip解压到/tmp目录下,并且不要覆盖已有文件
unzip -v test.zip ->查看test.zip内容,但不解压
unzip -o test.zip -d tmp/ ->将test.zip解压到/tmp目录下,并且覆盖已有文件
原文链接:https://blog.csdn.net/qq_27870421/article/details/92623897
7z
安装方法:
sudo apt-get install p7zip
sudo apt install p7zip-full (ubuntu20 有效)
解压文件:
7z x manager.7z -r -o /home/xx
解释如下:
x 代表解压缩文件,并且是按原始目录解压(还有个参数 e 也是解压缩文件,但其会将所有文件都解压到根下,而不是自己原有的文件夹下)manager.7z 是压缩文件,这里大家要换成自己的。如果不在当前目录下要带上完整的目录
-r 表示递归所有的子文件夹
-o 是指定解压到的目录,这里大家要注意-o后是没有空格的直接接目录
压缩文件:
7z a -t7z -r manager.7z /home/manager/*
解释如下:
a 代表添加文件/文件夹到压缩包
-t 是指定压缩类型 一般我们定为7z
-r 表示递归所有的子文件夹,manager.7z 是压缩好后的压缩包名,/home/manager/* 是要压缩的目录,*是表示该目录下所有的文件。
————————————————
版权声明:本文为CSDN博主「zqlovlg」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/zqlovlg/article/details/8033456
error
error: End-of-centdir-64 signature not where expected (prepended bytes?)
(attempting to process anyway)
warning [male.zip]: zipfile claims to be last disk of a multi-part archive;
attempting to process anyway, assuming all parts have been concatenated
together in order. Expect "errors" and warnings...true multi-part support
doesn't exist yet (coming soon).
warning [male.zip]: 61203283968 extra bytes at beginning or within zipfile
(attempting to process anyway)
file #1: bad zipfile offset (local header sig): 61203283972
(attempting to re-compensate)
error: invalid zip file with overlapped components (possible zip bomb)error: End-of-centdir-64 signature not where expected (prepended bytes?)
(attempting to process anyway)
warning [male.zip]: zipfile claims to be last disk of a multi-part archive;
attempting to process anyway, assuming all parts have been concatenated
together in order. Expect "errors" and warnings...true multi-part support
doesn't exist yet (coming soon).
warning [male.zip]: 61203283968 extra bytes at beginning or within zipfile
(attempting to process anyway)
file #1: bad zipfile offset (local header sig): 61203283972
(attempting to re-compensate)
error: invalid zip file with overlapped components (possible zip bomb)
直接使用右键解压道当前模块