作者HJY690803 (喵)
看板EZsoft
标题Re: [请益] 如何使用7z来批次压缩档案?
时间Mon Jan 23 20:50:04 2012
※ 引述《lcwmax (阿里山神木村拓哉)》之铭言:
: ※ 引述《junorn (威廉华勒斯)》之铭言:
: : 这样用可以一次拉比较多档案一次一起做
: : 但2000以上限定
: : @echo off
: : set a=c:\program files\7-zip\7z.exe
: : for %%a in (%*) do "%a%" a -tzip "%%~dpa%%~na.zip" %%a
: : 用法是将上面的文字存成abc.bat档放在桌面上,或随便哪个位置都可以看个人习惯
: : 假设桌面上有123.exe和234.exe要压缩成123.zip和234.zip
: : 就将123.exe和234.exe图示拉到abc.bat图示上面,跑完後会同样在桌面上产生123.zip
: : 和234.zip
: 这个赞
: 但我觉得将档案图示拉到 batch 档上压缩虽直觉但不方便
: 推荐将这个 .bat 档放到 "传送到" 里面
: 这样也能右键执行压缩,且不需要动到系统登录值(绿色软体XD)
: 之前我那个"伪"批次压缩方法放在 "传送到" 里会失败,所以只好写在右键选单内
: 但 junorn 的写法可以运作无误
: 将建好的 bat 档,档名随便
: 储存到 C:\Documents and Settings\(XP帐号)\SendTo 里面
: (若找不到 SendTo 请先显示隐藏档)
: 搭配 Ctrl 或 Shift 选取多个档案後按右键/传送到
: 选择那个 bat 档就能进行批次压缩了
: 不需清单档,又能整合於右键中,也不动到系统改登录值
: 个人认为是 7-Zip 实现 WinRAR 的 "一个档案建立一个压缩档" 相当不错的方法
: p.s. 提外话
: 如果喜欢 GUI 的压缩介面
: 可以将 7z.exe,改成 7zG.exe
: 这样压缩过程就会以进度 bar 呈现了
: (可惜不是整体进度 哈)
这几天在移转硬碟的资料,需要把大量日文资料夹图档批次压缩方便移转。
在GOOGLE上看到这篇,试用一下非常顺利,日文档名也能成功执行无乱码,
瞬间节省了大量手动的时间!
先感谢两位的分享^^
不过有一个问题就是执行时都会跑到前景作业,变成在批次压缩时无法做其它事情。
请问如何修改BAT档文件中程式码让它可以保持背景作业呢?
====补上我使用的版本===
@echo off
set a=c:\program files\7-zip\7zG.exe
for %%a in (%*) do (
dir /a %%a|findstr "DIR" >nul 2>nul && (
"%a%" a -tzip "%%~dpa%%~na.zip" "%%~a\*"
) || (
"%a%" a -tzip "%%~dpa%%~na.zip" %%a
)
)
==========================
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 118.167.25.203
※ 编辑: HJY690803 来自: 118.167.25.203 (01/23 22:57)