必须用命令行调用7z.exe或系统tar工具实现批量压缩:先配PATH确保7z可用,再用PowerShell循环压缩单个.log文件为独立.7z包,或用-v参数分卷压缩大文件并以7z t校验完整性,Windows 10/11还可直接用tar -czvf打包.tar.gz。

要在Windows上批量处理几十个日志文件、自动分卷上传网盘,或为自动化脚本嵌入压缩逻辑,图形界面右键操作根本来不及——必须用命令行直接调用7z.exe或系统内置tar工具,跳过所有弹窗和手动命名环节。
确认7-Zip命令行可用
打开PowerShell,输入7z并回车。如果显示版本号和“Usage: 7z
若提示“不是内部或外部命令”,需把C:\Program Files\7-Zip加进系统PATH:右键“此电脑”→属性→高级系统设置→环境变量→系统变量中找到Path→编辑→新建→粘贴该路径→确定。重启PowerShell再试。
【必须重启终端才能生效】旧窗口不会读取新PATH。
用PowerShell批量压缩单个文件为独立7z包
进入目标目录后执行:
Get-ChildItem *.log | ForEach-Object { 7z a -t7z -mx=9 "$($_.BaseName).7z" $_.FullName }
这行命令会把当前目录下每个.log文件单独压成一个同名.7z包,比如access.log → access.7z。
注意:$($_.BaseName)自动去掉扩展名;引号包裹变量防止路径含空格时报错;先用3个测试文件验证输出是否符合预期,再全量运行。
分卷压缩大文件并校验完整性
方法一:压缩D:\备份\全部资料为100MB分卷,设密码且最高压缩:
7z a -v100m -t7z -mx=9 -p "D:\备份\全部资料.7z" "D:\备份\全部资料"
执行后会提示输入密码,输入两次。生成全部资料.7z.001、全部资料.7z.002……所有分卷必须放在同一文件夹,缺一不可。
方法二:压缩完立刻校验(关键步骤,别跳过):
7z t "D:\备份\全部资料.7z.001"
让 Windows 桌面程序在开机时静默自启并隐藏到系统托盘。特别适用于 Flutter、Electron 等无视 VBS/ProcessStartInfo 窗口样式、难以隐藏的顽固应用。提供「VBS 启动器 + Python ctypes/Win32 API」的隐藏窗口方案,可稳定把窗口收进托盘且不闪控制台。
只校验.001即可,它会自动识别并检查整个分卷链。返回“Everything is Ok”才算真正可靠。
【解压时必须从.001开始,且所有分卷在同一目录】否则7z直接报错退出。
用系统内置tar命令快速打包解包.tar.gz
Windows 10 1803+ 和 Windows 11 自带tar,无需安装额外软件。
第一步:压缩D:\项目\src目录为project.tar.gz:
tar -czvf project.tar.gz D:\项目\src
第二步:解压到E:\提取目录:
tar -xzvf project.tar.gz -C E:\提取
-C参数必须大写,后面跟目标路径,中间不能有空格;路径含中文无影响,但含空格需用引号包裹,例如-C "E:\我的提取目录"。
不推荐的危险操作:WinRAR命令行删源文件
WinRAR命令WinRAR m -r -ep1 archive.rar D:\源文件夹 默认会永久删除源文件,回收站都找不到。
如非绝对必要,请改用WinRAR a -r -ep1 -df archive.rar D:\源文件夹,其中-df表示压缩后删除,但至少留了可控余地。
不过更建议全程使用7z:它不默认删源,安全性更高,参数也更统一。










