[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[已解决]批处理怎样一次压缩多个文件夹内的文件?

本帖最后由 tk1266 于 2012-1-14 16:17 编辑

有几千个文件夹,每个文件夹内有若干个文件,怎样一次批量压缩完所有文件,每个文件放到一个单独的压缩文件中.
压缩后用原文件名命名
压缩后删除原文件.

thanks.
1

评分人数

    • CrLf: 感谢给帖子标题标注[已解决]字样PB + 2

本帖最后由 cjiabing 于 2011-7-31 11:16 编辑

回复 11# tk1266


     人工做的时候是有选择、有间隔的,但机器做的时候方式方法可能不一样,它有可能把所有文件都搬到内存去了,然后一个个的压缩。这种情况在解压缩安装系统的时候是很明显的,你总感觉一个一个的解压比一下子将一个大文件解压的速度要快些,特别是写入优盘等情况。更准确的说法期待其他大侠解释。
     但从这个问题我们应当发现,单纯一个命令不是万能的,遇到问题,而自动识别和处理问题,这才是批处理要做的工作。而你还没有办法让你的批处理更加聪明,只是喜欢纠缠于此,仅此而已。
寂寞是黑白的,但黑白不是寂寞,是永恒。BAT 需要的不是可能,而是智慧。

TOP

另外,手工压缩时, 速度好象与杀软 防火墙无明显关系.

但执行BAT时, 关闭杀软防火墙后, 速度明显快了很多.

还有,为了避免 频繁调用rar.exe,  是不是可以考虑延时的思路?   比如 每压缩1000个延时1S, 或每压缩完一个文件夹延时1S.

谢谢.

TOP

回复  tk1266


哦,你是手工压缩时,在WinRAR里面勾选了“把每个文件放到单独的压缩文件中”对吧?
命 ...
CUer 发表于 2011-7-30 12:55



    是的,勾选了的.
因为每个样本文件只有1KB, 压缩过程速度较快,  压缩耗时约3分钟.   
由于12200个文件放在同一个文件夹, 比较费时的是 打开文件夹 和 选定所有文件 以及 删除原文件 这三个过程.

TOP

回复 15# tk1266


哦,你是手工压缩时,在WinRAR里面勾选了“把每个文件放到单独的压缩文件中”对吧?
命令行版本里面暂时没看到这样的选项,我再找找。

TOP

但我觉得效率都低了点, 希望有更高的效率,谢谢。

TOP

每个文件1KB, 我把12200个样本文件放在 123个 文件夹中, 每个文件夹100个文件。

执行BAT,
关闭防火墙,杀软 以及360, 速度会更快,耗时约20分钟。

TOP

回复  tk1266


手工是把12200个文件压缩之后放到同一个rar文件里面吗?
CUer 发表于 2011-7-30 12:32


同一个文件夹 ,每个文件压缩成独立的。

TOP

回复 11# tk1266


手工是把12200个文件压缩之后放到同一个rar文件里面吗?

TOP

回复 10# tk1266


把"C:\test\"删掉

TOP

“系统资源不足,无法完成请求的服务”——这个和程序代码正确与否没有关系呢,可能你的操纵的文件太多了, ...
cjiabing 发表于 2011-7-30 11:47


“系统资源不足,无法完成请求的服务”——是在BAT界面卡住时, 我点其他 图标后  弹出来的.

    每个文件1KB,  我手动压缩12200个用了11分钟,   包括压缩及删除原文件.    其中删除费时最长.

但用BAT处理远远超过了10分钟.

TOP

回复  tk1266


把*.txt改成*.*
路径是指哪个路径?如果要把所有文件压缩之后放在当前目录,可以把%%~ ...
CUer 发表于 2011-7-30 11:43



    我说的路径是指这个 C:\Test\

BAT放在目标文件夹同一级目录,   如果每次都要设置C:\Test\然后存为新的BAT,多了一个不必要的步骤.

TOP

“系统资源不足,无法完成请求的服务”——这个和程序代码正确与否没有关系呢,可能你的操纵的文件太多了,耗费太多资源了。可以压缩分部分来压缩,不要一次压缩太多。
1

评分人数

    • CrLf: 乐于助人PB + 5
寂寞是黑白的,但黑白不是寂寞,是永恒。BAT 需要的不是可能,而是智慧。

TOP

回复 5# tk1266


把*.txt改成*.*
路径是指哪个路径?如果要把所有文件压缩之后放在当前目录,可以把%%~dpa删掉。

TOP

回复  tk1266


怀疑是太频繁的调用rar.exe造成的,你先换个4.0版本的试试?不行我们再一起想办法
CUer 发表于 2011-7-30 11:16


已升级到4.1版本,用少量(几个)文件夹测试是正常的,但效率还是不高.

TOP

返回列表