在评估zip64最大压缩和7z lzma2压缩等级5之间的差异时,我们可以从以下几个方面进行比较:
文件大小: 7z格式通常具有极高的压缩比。特别是当使用LZMA2算法(作为7z格式支持的压缩算法之一)时,可以期待相对较高的压缩率1。 zip64是zip格式的一个扩展,用于支持大于4GB的文件和归档。然而,就压缩率而言,它可能不如7z的LZMA2算法那么高效2。 因此,在文件大小方面,7z lzma2压缩等级5通常可以生成比zip64最大压缩更小的压缩文件。
压缩/解压所需时间: 压缩速度方面,7z的LZMA2算法通常比zip64快,尤其是在使用多核处理器时,因为7z支持多线程压缩1。 解压速度方面,zip格式通常比7z更快,因为zip格式更为普及,许多系统和软件都对其有原生支持4。然而,对于特定的高压缩率设置(如LZMA2压缩等级5),解压时间可能会相对较长。 具体的压缩/解压时间还取决于文件的内容、计算机硬件(尤其是CPU性能)和所使用的软件实现。
其他因素: 安全性:7z和zip格式都支持加密功能,但7z通常使用更强大的AES-256加密算法1。 普适性:zip格式由于其广泛的普及度,在跨平台和跨软件兼容性方面表现更好。而7z格式虽然也在逐渐普及,但在某些环境中可能不如zip方便2。 软件支持:7z格式主要由7-Zip软件支持,而zip格式则有更广泛的软件支持。
综上所述,7z lzma2压缩等级5在文件大小方面通常优于zip64最大压缩,压缩速度也更快,但解压速度可能稍慢。在选择使用哪种压缩格式时,需要根据具体需求权衡这些因素。
@echo off
setlocal enabledelayedexpansion
dir /b *.zip >list.csv
set “PASSWORD=253874”
set “EXTRACT_DIR=c:\db\”
set “OUTPUT_DIR=x:\”
set “CSV_FILE=list.csv”
set “SEVENZIP_PATH=7z.exe”
for /f “tokens=1* delims=,” a in (%CSV_FILE%) do (
set "ZIP_FILE=a“
set “EXTRACT_NAME=%%~nxa”
set “EXTRACT_NAME=!EXTRACT_NAME:.zip=!”
set “EXTRACT_PATH=!EXTRACT_DIR!!EXTRACT_NAME!”
set “OUTPUT_FILE=!OUTPUT_DIR!!EXTRACT_NAME!.7z”
REM 使用7z.exe解压ZIP文件
”!SEVENZIP_PATH!“ x -o”!EXTRACT_DIR!“ -p!PASSWORD! ”!ZIP_FILE!“ -y
REM 等待解压完成(这里是一个简单的等待,可能需要更复杂的逻辑来确保文件已完全解压)
timeout /t 5 >nul
REM 使用7z.exe压缩为7z文件
”!SEVENZIP_PATH!“ a -t7z -p!PASSWORD! ”!OUTPUT_FILE!“ ”!EXTRACT_PATH!\“ -mx=5 -mmt=20 -ms=off -m0=LZMA2:d=16m:fb=32 -r -y
REM 删除临时解压的文件夹(确认解压和压缩都成功后)
if exist ”!EXTRACT_PATH!“ rd /s /q ”!EXTRACT_PATH!“
)
endlocal
上面代码是一个队列方式将 zip&zip64格式 批量转码 7z lzma2 压缩包的一个例子 使用需要将上面代码保存为bat批处理文件(注意双引号 需转码ANSI保存)
根据 压缩率比较表 by 急云 报告 能有效降低存储空间消耗约30%