从基础操作到高阶技巧,覆盖图形界面、命令行、自动化脚本全场景。
LZMA(Lempel-Ziv-Markov chain-Algorithm)是一种高效的数据压缩算法,广泛用于 .7z
和 .xz
文件格式。本教程将通过多种方法实现安装,并提供自动化验证方案。常见于以下扩展名:
.7z
:7-Zip 标准压缩格式
.lzma
:原始 LZMA 压缩流
.xz
:基于 LZMA2 的跨平台压缩格式
操作系统:Windows 11(版本 21H2 或更高)
权限:管理员权限(部分操作需要)
存储空间:至少保留目标文件体积 *2 的可用空间
# 验证 PowerShell 版本
$PSVersionTable.PSVersion
Set-ExecutionPolicy Bypass -Scope Process -Force
[System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072
iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
choco install 7zip -y
7z | Select-String "LZMA"
$url = "https://www.7-zip.org/a/lzma2201.7z"
$output = "$env:TEMP\lzma.7z"
Invoke-WebRequest -Uri $url -OutFile $output
7z x $output -o"C:\LZMA_SDK" -y
[Environment]::SetEnvironmentVariable(
"Path",
[Environment]::GetEnvironmentVariable("Path", [EnvironmentVariableTarget]::Machine) + ";C:\LZMA_SDK\bin",
[EnvironmentVariableTarget]::Machine
)
# 在 PowerShell 中安装 NuGet 包
Install-Package LZMA-SDK -Source https://www.nuget.org/api/v2
7z a -t7z "C:\Backup.7z" "D:\Project\*"
a
:添加文件到压缩包
-t7z
:指定 7z 格式
7z a -v500m "C:\Split.7z" "D:\LargeFiles\*"
7z a -pMyPassword -mhe=on "C:\Secure.7z" "D:\Confidential\*"
-p
:设置密码
-mhe=on
:加密文件名
7z x "C:\Backup.7z" -o"D:\Extracted"
x
:完整路径解压
-o
:指定输出目录(注意:-o与路径间无空格)
7z e "C:\Backup.7z" -o"D:\Target" "*.docx"
e
:解压不保留目录结构
7z x -pMyPassword "C:\Secure.7z" -o"D:\Decrypted"
7z a -mmt=8 "C:\Fast.7z" "D:\Data\*"
-mmt=8
:使用 8 个线程
7z a -mx=9 "C:\MaxCompression.7z" "D:\Files\*"
-mx=0-9
:0=不压缩,9=最高压缩
7z a -sfx "C:\SelfExtract.exe" "D:\Files\*"
7z t "C:\Backup.7z"
7z t "archive.7z" # 测试压缩包是否损坏
Get-FileHash "解压后文件.txt" -Algorithm SHA256
与源文件提供的哈希值对比
Get-ChildItem "D:\Archives" -Filter *.7z | ForEach-Object {
7z x $_.FullName -o"D:\Extracted\$($_.BaseName)"
}
7z x "large.7z" -o"D:\output" -mmt=8 -mmem=4G
-mmt=8
:使用 8 线程加速
-mmem=4G
:分配 4GB 内存
7z x "C:\怪异&路径.7z" -o"C:\标准路径" -aoa
-aoa
:强制覆盖已有文件
问题现象 | 解决方案 |
---|---|
解压时报 CRC 错误 | 使用 7z x -scrcSHA256 启用强校验 |
密码错误或未指定 | 添加 -p密码 参数(加密文件必需) |
权限不足 | 以管理员身份运行 PowerShell 或 7-Zip |
分卷文件不完整 | 确保所有 .001, .002 等分卷位于同一目录 |
来源可信:解压前用杀毒软件扫描压缩包
密码管理:避免使用简单密码,推荐使用密码管理器生成
权限控制:敏感文件解压后设置 NTFS 权限
调试工具:Process Monitor(监控解压过程)
批量重命名:PowerRename(处理解压后的杂乱文件名)
云集成:Rclone(直接解压到 OneDrive/Google Drive)
附:常用命令速查表
# 查看压缩包内容
7z l "archive.7z"
# 解压到当前目录
7z x "archive.7z" -aoa
# 静默模式(无输出)
7z x "archive.7z" -o"D:\output" -bso0 -bse0
通过本教程,您可掌握从基础到企业级的 LZMA 文件解压技能。建议根据场景选择最适合的方法,并定期备份重要数据以防意外损坏。