对winrar文件批量添加注释和文件[跳过加密文件]
为上千上万个rar压缩文件添加注释和文件,这种需求是在这样的情况下产生的,为了给我们的论坛的rar附件加上http://bbs.sunwy.org这个注释文件 ,
在google上面搜索了好久,总结如下经验。
在这里,我们用到了winrar的命令行工具 rar.exe ,在winrar的安装目录下可以
找到。
其中,添加注释很简单了,一个命令即可高定
而要给数万个rar文件添加一个文件进去,就不是一句话能做完的,我们知道要往
一个rar文件里面添加文件的话,可以用这样的命令完成
rar.exe a c:\a.rar c:\sunwy.org.txt
这样就把 sunwy.org.txt这个文件添加到 a.rar 这个压缩文件当中去了。
刚开始的时候,我试过 rar.exe a :\www\DiscuzX15\data\attachment\forum\*.rar c:\sunwy.org.txt 这个命令,结果不行。
最后,想到了批处理,批处理不是一个接一个的命令执行吗,
于是,写了个很简单的批处理,轻松搞定
[*] 格式:FOR [参数] %%变量名 IN (相关文件或命令) DO 执行的命令
[*] 作用:对一个或一组文件,字符串或命令结果中的每一个对象执行特定命令,达到我们想要的结果。
[*] 注意:在批处理文件中使用 FOR 命令时,指定变量请使用 %%variable,而不要用 %variable。变量名称是区分大小写的,所以 %i 不同于 %I.
[*] 关于:for命令可以带参数或不带参数,带参数时支持以下参数:/d /l /r /f
[*] 下面分别解释一下
[*]
[*] ===
[*] 零:无参数时:
[*] ---
[*] FOR %variable IN (set) DO command
[*] %variable指定一个单一字母可替换的参数。
[*] (set) 指定一个或一组文件。可以使用通配符。
[*] command 指定对每个文件执行的命令。
[*] command-parameters
[*] 为特定命令指定参数或命令行开关。
[*]
[*] TTT示例:
[*] for %%i in (t*.*) do echo %%i --显示当前目录下与t*.*相匹配的文件(只显示文件名,不显示路径)
[*] for %%i in (d:\mydocuments\*.doc) do @echo %%i --显示d:\mydocuments\目录下与*.doc相匹配的文件
最后使用下面批处理成功
@echo off
for /r e:\www\DiscuzX15\data\attachment\forum\ %%i in (*.rar) do e:\Progra~1\WinRAR\Rar.exe c -p- -ze:\阳光网驿使用说明.txt %%i注:-p-是忽略有密码的压缩包
-ze:\阳光网驿使用说明.txt是添加注册文件
支持下老大,以前也研究过这个,后来用的软件搞定的 @echo off
for /r D:\wwwroot\bbs.sunwy.org\DiscuzX15\data\attachment\forum\201102\ %%i in (*.rar) do e:\Progra~1\WinRAR\Rar.exe c -p- -ze:\阳光网驿使用说明.txt %%i根据dx1.5 版本,按年月分目录的备份格式
:lol:lol:lol不知道谁能帮我弄下加密文件.
页:
[1]