TA的每日心情 | 开心 2021-8-30 00:00 |
---|
签到天数: 35 天 [LV.5]常住居民I
|
为上千上万个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 [command-parameters]
- %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 是添加注册文件
|
|