无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 29121|回复: 228
打印 上一主题 下一主题

[原创] 【20250530】便捷右键菜单:7z极限解压缩

    [复制链接]
跳转到指定楼层
#
发表于 2023-10-7 17:04:00 | 只看该作者 |只看大图 回帖奖励 |正序浏览 |阅读模式
本帖最后由 BEIKING 于 2025-5-30 16:24 编辑



【包含功能】
  ① 转换7z文件为自解压程序
  ② 提取可解压文档的内部图片
  ③ 智能解压到文件夹
  ④ 7z极限压缩 (常规压缩、LZMA、LZMA2、LZMA2 BCJ2)
  ⑤ 按分卷压缩为7z
  ⑥ 压缩为zip

【脚本设置】
Set "ImgExt=*.emf *.wmf *.jpg *.jpeg *.jfif *.jpe *.png *.bmp *.dib *.rle *.gif *.emz *.wmz *.pcz *.tif *.tiff *.eps *.pct *.pict *.wpg" :: 提取图片过滤字符串
Set "DocExt=.docx .xlsx .pptx .ofd .chm" :: 支持提取图片的文档格式
Set "SdcExt=7z rar rar5" :: 支持获取根列表的压缩格式

【使用方法】
*** 不支持带 % 路径 ***

方法一、安装系统右键菜单
双击“7z极限压缩.bat”添加系统右键菜单
再次双击“7z极限压缩.bat”删除系统右键菜单

方法二、通过命令行参数调用,可集成到第三方管理器
注意事项:
  下文提到的“带双引号路径”,就算是路径没含空格也必须带上双引号
   <> 为必选参数 | [] 为可选参数
  “压缩等级”可选范围:0 1 3 5 7 9
  “字典大小”可选范围:64m 96m 128m 192m 256m 384m 512m 768m ...

① 转换7z文件为自解压程序:
7z极限压缩.bat MakeSfx "命令行窗口标题" "带双引号的7z文件绝对路径"
例子:
  7z极限压缩.bat MakeSfx "7z转换自解压程序" "C:\Test\file.7z"

② 提取可解压文档的内部图片
7z极限压缩.bat ExtrImg "带双引号的可以解压文档绝对路径"
例子:
  7z极限压缩.bat ExtrImg "C:\Test\file1.docx"

③ 智能解压到文件夹:
7z极限压缩.bat <SmartDc|StDcDel> <Judge|MkDir> "命令行窗口标题" "带双引号的解压文件绝对路径" ["带双引号的解压绝对路径"]
  SmartDc -> 智能解压到文件夹
  StDcDel -> 智能解压到文件夹成功后,删除源文件
  Judge   -> 通过获取压缩包根路径列表,判断是否需要新建文件夹解压
  MkDir   -> 预先解压到当前临时文件夹,再判断是否自动移出
  "带双引号的解压绝对路径" 非必填,若不指定则解压到压缩文件的当前路径
例子:
  7z极限压缩.bat SmartDc Judge "智能解压到文件夹" "C:\Test\file.7z"
  7z极限压缩.bat SmartDc Judge "智能解压到文件夹" "C:\Test\file.7z" "C:\Users\Administrator\Desktop"

④ 解压到文件夹:
7z极限压缩.bat <Extract|ExtrDel> "命令行窗口标题" "带双引号的解压文件绝对路径" ["Desktop"|"ArchDir"|"带双引号的解压绝对路径"]
  Extract -> 解压到文件夹
  ExtrDel -> 解压到文件夹成功后,删除源文件
  Desktop -> 表示解压到当前用户桌面
  ArchDir -> 表示解压到[压缩包名称]文件夹
例子:
  7z极限压缩.bat Extract "解压到当前文件夹" "C:\Test\file.7z"
  7z极限压缩.bat Extract "解压到[压缩包]文件夹" "C:\Test\file.7z" "ArchDir"
  7z极限压缩.bat Extract "解压到桌面文件夹" "C:\Test\file.7z" "C:\Users\Administrator\Desktop"

⑤ 常规压缩(不含目录):
7z极限压缩.bat UltiCom NoDir "命令行窗口标题" "压缩等级[0 1 3 5 7 9]" "带双引号的文件夹绝对路径"
例子:
  7z极限压缩.bat UltiCom NoDir "GUI设置:9-极限压缩 不含目录" "9" "C:\Test"

⑥ 常规压缩:
7z极限压缩.bat UltiCom General "命令行窗口标题" "压缩等级[0 1 3 5 7 9]" "带双引号的第一个压缩对象绝对路径" ["第二个对象(可以是相对路径也可以是绝对路径)" ...]
7z极限压缩.bat UltiCom General "命令行窗口标题" "压缩等级[0 1 3 5 7 9]" "带双引号的生成文件绝对路径.[-out]!" "第一个对象(可以是相对路径也可以是绝对路径)" ["第二个对象(可以是相对路径也可以是绝对路径)" ...]
例子:
  7z极限压缩.bat UltiCom General "GUI设置:9-极限压缩" "9" "C:\Test"
  7z极限压缩.bat UltiCom General "GUI设置:9-极限压缩" "9" "C:\Test\file1.txt" "file2.txt" "file3.txt"
  7z极限压缩.bat UltiCom General "GUI设置:9-极限压缩" "9" "C:\Test\生成文件.7z.[-out]!" "file1.txt" "file2.txt" "file3.txt"

⑦ LZMA 算法极限压缩:
7z极限压缩.bat UltiCom LZMA "命令行窗口标题" "字典大小" "带双引号的第一个压缩对象绝对路径" ["第二个对象(可以是相对路径也可以是绝对路径)" ...]
7z极限压缩.bat UltiCom LZMA "命令行窗口标题" "字典大小" "带双引号的生成文件绝对路径.[-out]!" "第一个对象(可以是相对路径也可以是绝对路径)" ["第二个对象(可以是相对路径也可以是绝对路径)" ...]
例子:
  7z极限压缩.bat UltiCom LZMA "单线程 LZMA 128M" "128m" "C:\Test"
  7z极限压缩.bat UltiCom LZMA "单线程 LZMA 128M" "128m" "C:\Test\file1.txt" "file2.txt" "file3.txt"
  7z极限压缩.bat UltiCom LZMA "单线程 LZMA 128M" "128m" "C:\Test\生成文件.7z.[-out]!" "file1.txt" "file2.txt" "file3.txt"

⑧ LZMA2 算法极限压缩:
7z极限压缩.bat UltiCom LZMA2 "命令行窗口标题" "字典大小" "带双引号的第一个压缩对象绝对路径" ["第二个对象(可以是相对路径也可以是绝对路径)" ...]
7z极限压缩.bat UltiCom LZMA2 "命令行窗口标题" "字典大小" "带双引号的生成文件绝对路径.[-out]!" "第一个对象(可以是相对路径也可以是绝对路径)" ["第二个对象(可以是相对路径也可以是绝对路径)" ...]
例子:
  7z极限压缩.bat UltiCom LZMA2 "多线程 LZMA2 128M" "128m" "C:\Test"
  7z极限压缩.bat UltiCom LZMA2 "多线程 LZMA2 128M" "128m" "C:\Test\file1.txt" "file2.txt" "file3.txt"
  7z极限压缩.bat UltiCom LZMA2 "多线程 LZMA2 128M" "128m" "C:\Test\生成文件.7z.[-out]!" "file1.txt" "file2.txt" "file3.txt"

⑨ LZMA2 BCJ2 算法极限压缩:
7z极限压缩.bat UltiCom LBCJ2 "命令行窗口标题" "字典大小" "带双引号的第一个压缩对象绝对路径" ["第二个对象(可以是相对路径也可以是绝对路径)" ...]
7z极限压缩.bat UltiCom LBCJ2 "命令行窗口标题" "字典大小" "带双引号的生成文件绝对路径.[-out]!" "第一个对象(可以是相对路径也可以是绝对路径)" ["第二个对象(可以是相对路径也可以是绝对路径)" ...]
例子:
  7z极限压缩.bat UltiCom LBCJ2 "多线程 LZMA2 128M f=BCJ2" "128m" "C:\Test"
  7z极限压缩.bat UltiCom LBCJ2 "多线程 LZMA2 128M f=BCJ2" "128m" "C:\Test\file1.txt" "file2.txt" "file3.txt"
  7z极限压缩.bat UltiCom LBCJ2 "多线程 LZMA2 128M f=BCJ2" "128m" "C:\Test\生成文件.7z.[-out]!" "file1.txt" "file2.txt" "file3.txt"

⑩ 按分卷压缩为7z:
7z极限压缩.bat UltiCom Split "命令行窗口标题" "压缩等级[0 1 3 5 7 9]|分卷大小" "带双引号的第一个压缩对象绝对路径" ["第二个对象(可以是相对路径也可以是绝对路径)" ...]
7z极限压缩.bat UltiCom Split "命令行窗口标题" "压缩等级[0 1 3 5 7 9]|分卷大小" "带双引号的生成文件绝对路径.[-out]!" "第一个对象(可以是相对路径也可以是绝对路径)" ["第二个对象(可以是相对路径也可以是绝对路径)" ...]
例子:
  7z极限压缩.bat UltiCom Split "按 500MB 分卷压缩为7z" "7|500m" "C:\Test"
  7z极限压缩.bat UltiCom Split "按 500MB 分卷压缩为7z" "7|500m" "C:\Test\file1.txt" "file2.txt" "file3.txt"
  7z极限压缩.bat UltiCom Split "按 500MB 分卷压缩为7z" "7|500m" "C:\Test\生成文件.7z.[-out]!" "file1.txt" "file2.txt" "file3.txt"

⑾ 压缩为zip:
7z极限压缩.bat UltiCom ZIP "命令行窗口标题" "压缩等级[0 1 3 5 7 9]|压缩算法[Deflate Deflate64]" "带双引号的第一个压缩对象绝对路径" ["第二个对象(可以是相对路径也可以是绝对路径)" ...]
7z极限压缩.bat UltiCom ZIP "命令行窗口标题" "压缩等级[0 1 3 5 7 9]|压缩算法[Deflate Deflate64]" "带双引号的生成文件绝对路径.[-out]!" "第一个对象(可以是相对路径也可以是绝对路径)" ["第二个对象(可以是相对路径也可以是绝对路径)" ...]
例子:
  7z极限压缩.bat UltiCom ZIP "最高等级压缩为zip" "9|Deflate" "C:\Test"
  7z极限压缩.bat UltiCom ZIP "最高等级压缩为zip" "9|Deflate" "C:\Test\file1.txt" "file2.txt" "file3.txt"
  7z极限压缩.bat UltiCom ZIP "最高等级压缩为zip" "9|Deflate" "C:\Test\生成文件.7z.[-out]!" "file1.txt" "file2.txt" "file3.txt"



【20231007 21:10】
增加功能:7z文件提取到当前位置

【20231008】
1)增加单文件压缩
2)完善 7z文件 -> 提取到当前文件夹,归纳到统一主菜单管理
3)支持设置统一压缩密码,在脚本23行(默认不开启,有需要自己手动开启)、
4)增加压缩项:7-最大压缩,9-极限压缩

【20231010】
1)实现需求:增加多文件选择,用父文件夹名字做压缩包名的压缩。
     父文件夹右键菜单 -> “不含目录” 压缩
2)调整菜单排版

【20231014】
1)小改动:压缩或解压操作结束,CMD窗口暂停3秒变色提示。用于某些情况压缩命令报错有时间看提示(例如:压缩所需内存不足)
2)版本分为:7z1900版 和 7z2301版

【20240516】
1)更新版本 7z2405

【20240529】
1)更新版本 7z2406

【20240610】
1)7z2406 v2 右键菜单增加,7z压缩包转换为自解压exe程序。

【20240621】
1)更新版本 7z2407

【20240814】
1)更新版本 7z2408

【20241204】
1)更新版本 7z2409

【20250419】
重写脚本:
1)增加7z智能解压、提取文档图片、按分卷压缩、压缩为zip
2)7z智能解压,可以无视压缩包目录结构,如果是零散文件,则会创建根文件夹存放解压文件
3)增加命令行参数调用

第三方资管调用效果


【20250419】
智能解压改为通过外置获取压缩包全列表去重根级后再判断,
完善了一些逻辑,现在不会再产生临时解压文件夹

【20250530】
修正一处智能解压失败时处理,
命令行参数增加:StDcDel、ExtrDel  解压完成后删除源文件

链接: https://pan.baidu.com/s/1BF4mGpPUiEbK7X9NBeGF-g?pwd=wqkr
提取码: wqkr

评分

参与人数 6无忧币 +30 收起 理由
2010wukong + 5 很给力!
wawakuliao + 5 赞一个!
tse000 + 5 赞一个!
slyneo + 5 很给力!
huyadong + 5 赞一个!
1801403 + 5 大佬,请把你哪超级菜单分享一下。

查看全部评分

215#
发表于 前天 00:09 | 只看该作者
谢谢分享
回复

使用道具 举报

214#
发表于 3 天前 来自手机 | 只看该作者
支持!
回复

使用道具 举报

213#
发表于 3 天前 | 只看该作者
大佬,7-Zip更新25.00了
回复

使用道具 举报

212#
发表于 3 天前 | 只看该作者
7Z版本更新了
回复

使用道具 举报

211#
发表于 2025-6-25 21:32:34 | 只看该作者
其实这么多年,一直想7z能有的功能
1是右键多选文件可以像winrar一样,解压缩到一个文件夹中,而不是解压缩到各自的文件夹总。
2是分卷压缩包如果有错误,可以想winrar一样提示哪个分卷有错误。
回复

使用道具 举报

210#
发表于 2025-6-25 19:43:18 | 只看该作者
怎么删除回收站的7z菜单?
回复

使用道具 举报

209#
发表于 2025-5-31 21:34:45 | 只看该作者
右键菜单太多了,不知道有什么区别,精简一下就好了,回收站不应该有菜单,不舒服哈
回复

使用道具 举报

208#
 楼主| 发表于 2025-5-31 19:54:07 | 只看该作者
jnwin123 发表于 2025-5-31 18:19
两个256 两个384 是什么意思?f=BCJ2

压缩参数不一样,一个有加 f=BCJ2,一个没加
回复

使用道具 举报

207#
发表于 2025-5-31 18:19:19 | 只看该作者
BEIKING 发表于 2025-5-31 17:41
我没有设置重复菜单

两个256 两个384 是什么意思?f=BCJ2

点评

压缩参数不一样,一个有加 f=BCJ2,一个没加  详情 回复 发表于 2025-5-31 19:54
回复

使用道具 举报

206#
 楼主| 发表于 2025-5-31 17:41:43 | 只看该作者
jnwin123 发表于 2025-5-31 15:58
回收站显示 确实看着不舒服。

右键重复的菜单是啥意思?

我没有设置重复菜单

点评

两个256 两个384 是什么意思?f=BCJ2  详情 回复 发表于 2025-5-31 18:19
回复

使用道具 举报

205#
发表于 2025-5-31 15:58:25 | 只看该作者
BEIKING 发表于 2024-11-29 14:58
再执行一次,不就删除了

回收站显示 确实看着不舒服。

右键重复的菜单是啥意思?
回复

使用道具 举报

204#
发表于 2025-5-31 10:22:59 | 只看该作者
casttt 发表于 2023-10-8 11:10
想设置7Z的右键-“压缩”功能,默认采用最大方式(等级7,不是极限、因为小不了多少但费时),

不知有知 ...

是33行吗?开启了设置密码以后是不是自动带解压密码了?感觉有个自定设置密码的方便些
回复

使用道具 举报

203#
发表于 2025-5-31 10:04:09 | 只看该作者
BEIKING 发表于 2023-10-8 07:29
右键压缩菜单,我只做在文件夹右键,文件右键没做
如果做在文件右键,只打包单个文件没多大意义

你放到个文件夹里就可以了呀
回复

使用道具 举报

202#
发表于 2025-5-31 08:33:21 | 只看该作者
谢谢分享。
回复

使用道具 举报

201#
发表于 2025-5-31 07:53:29 | 只看该作者
右键两个128  两个256什么区别?
回复

使用道具 举报

200#
发表于 2025-5-30 21:37:59 来自手机 | 只看该作者
感谢分享
回复

使用道具 举报

199#
发表于 2025-5-30 19:46:33 | 只看该作者
感谢大佬分享
回复

使用道具 举报

198#
发表于 2025-5-30 18:20:52 | 只看该作者
谢谢楼主分享!
回复

使用道具 举报

197#
发表于 2025-5-30 18:10:44 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

196#
发表于 2025-5-30 17:53:48 | 只看该作者
这个好,收下了,谢谢分享。
回复

使用道具 举报

195#
发表于 2025-5-30 17:46:52 来自手机 | 只看该作者
兰州盘没有吗
回复

使用道具 举报

194#
发表于 2025-5-30 17:27:58 | 只看该作者
感谢分享
回复

使用道具 举报

193#
发表于 2025-5-30 17:08:32 | 只看该作者
感谢持续更新
回复

使用道具 举报

192#
 楼主| 发表于 2025-5-30 16:26:59 | 只看该作者
【20250530】
修正一处智能解压失败时处理,
命令行参数增加:StDcDel、ExtrDel  解压完成后删除源文件
回复

使用道具 举报

191#
发表于 2025-5-30 14:20:05 | 只看该作者
期待更新!!!!!!!
回复

使用道具 举报

190#
发表于 2025-4-26 07:51:41 来自手机 | 只看该作者
感谢分享
回复

使用道具 举报

189#
发表于 2025-4-25 18:57:59 | 只看该作者
感谢分享
回复

使用道具 举报

188#
发表于 2025-4-25 18:39:06 | 只看该作者
谢谢大佬分享!
回复

使用道具 举报

187#
发表于 2025-4-25 16:24:18 | 只看该作者

谢谢分享
回复

使用道具 举报

186#
发表于 2025-4-25 16:18:39 | 只看该作者
感谢大佬分享
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2025-7-10 13:26

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表