如何多平台批量加压缩文件
一:故事背景:
之前在做测试的时候会遇到需要到日志文件出来分析,然而日志文件都是压缩的格式需要一个个解压比较麻烦,于是乎写了这个批量解压的自动脚本
二:注意事项
首先需要在电脑上安装解压缩软件,比如WinRAR和Bandizip都是不错的选择,这里推荐使用Bandizip,因为命令比较简单,哈哈
三:命令介绍
3.1 Windows平台
3.1.1 Bandizip命令介绍
bz命令介绍
< Commands> 命令
a : 添加文件到压缩包
x : 用完整路径解压文件
t : 测试压缩包完整性
d : 删除压缩包中文件
c : 创建新档案(或覆盖现有文件)
cd: 显示“新建压缩包”对话框
<Switches>
- 停止开关扫描
-l:<0...9> 设置压缩级别(0:存储,5:默认,9:最大)
-r- 禁用递归(默认)
-r 启用递归子目录
-aoa 无需提示覆盖全部现有文件
-aos 跳过且不覆盖已有文件
-aou 自动重命名已提取文件
(例如,name.txt→name (2).txt)
-sfx:[{name}] 创建SFX档案并设置SFX STUB的完整路径
-zopfli 使用Zopfil作为默认编码器(慢)
-p:{password} 设置档案密码
-o:{dir} 指定目标文件夹
-y 所有询问都为是若无错误发生,则在任务完成时关闭(解)压缩窗口
-fmt:{fmt} 指定档案格式
(zip, zipx, exe, tar, tgz, lzh, iso, 7z, gz, xz)
-v:{size} 指定分卷大小(-v:1000000 -v:1440k -v:100MB ...)
-target:auto 使用自动解压功能将文件提取到目标文件夹。若未指定目标文件夹,则将文件提取到每个档案所在的文件夹中。
-target:name 将文件提取到目标文件夹中的档案名文件夹内。若未指定目标文件夹,则将文件提取到每个档案所在文件夹中的档案名文件夹内。
demo1:比如要解压当前目录的01.zip 文件到当前目录
首先,进入文件夹中 按住Shift键 点击鼠标右键选择在此处打开命令窗口
执行命令bz x 01.zip 如下
D:\liuwt\桌面\01>bz x 01.zip
bz 7.13(Beta,x64) - Bandizip console tool. Copyright(C) 2020 Bandisoft
Extracting archive: D:\liuwt\桌面\01\01.zip
bootstrap-5.0.0-beta1-examples\
bootstrap-5.0.0-beta1-examples\album\
bootstrap-5.0.0-beta1-examples\album\index.html
bootstrap-5.0.0-beta1-examples\album-rtl\
bootstrap-5.0.0-beta1-examples\album-rtl\index.html
bootstrap-5.0.0-beta1-examples\assets\
bootstrap-5.0.0-beta1-examples\assets\brand\
执行完命令最后会得到自解压的文件夹
demo2:比如要压缩目录 文件到当前目录(bootstrap-5.0.0-beta1-examples) 格式为tgz 且压缩比为最大,压缩后文件名为03.tgz
执行命令bz c -l:9 -fmt:tgz 03.tgz bootstrap-5.0.0-beta1-examples 如下
D:\liuwt\桌面\01>bz c -l:9 -fmt:tgz 03.tgz bootstrap-5.0.0-beta1-examples
bz 7.13(Beta,x64) - Bandizip console tool. Copyright(C) 2020 Bandisoft
Creating archive: D:\liuwt\桌面\01\03.tgz
Compressing: bootstrap-5.0.0-beta1-examples/
Compressing: bootstrap-5.0.0-beta1-examples/album/
Compressing: bootstrap-5.0.0-beta1-examples/album-rtl/
Compressing: bootstrap-5.0.0-beta1-examples/assets/
Compressing: bootstrap-5.0.0-beta1-examples/blog/
Compressing: bootstrap-5.0.0-beta1-examples/blog-rtl/
Compressing: bootstrap-5.0.0-beta1-examples/carousel/
最后会得到03.tgz的压缩文件
待更新。。。