中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-08 17:07
47,811 主题排行 / 349,895 发帖 / 今日 0 篇 / 48,253 会员排行
DOS批处理 & 脚本技术(批处理室) » 求一个自动生成RAR压缩包的批处理
可打印版本  1,174 / 14
第1楼 lena 发表于 2008-04-04 21:47
初级用户 发帖 67 积分 154
求一个自动生成RAR压缩包的批处理
本人现有300多个文件需要添加到压缩文件中,并且每一个文件做一个压缩包.然后向其添加注释和密码.所有的均一样.

文件存放在一个文件夹内,!

求各位大侠的帮助.
第2楼 Climbing 发表于 2008-04-04 22:01
铂金会员 发帖 2,753 积分 6,962 来自 河北保定
这个应该没有什么难的,一个for循环就可以解决了。
第3楼 lena 发表于 2008-04-04 22:05
初级用户 发帖 67 积分 154
大哥,你很聪明,但我不聪明,能帮俺写个吗?

我们道不同,不经常用,FOR ???? DO ????

咋定义啊??
第4楼 Climbing 发表于 2008-04-04 22:23
铂金会员 发帖 2,753 积分 6,962 来自 河北保定
你在本论坛看一下有关for命令的帖子,不出十个你就应该明白了如何使用了,然后就是再研究一下winrar的命令行用法,这个看它的帮助就行了。再说下去,似乎只能把饭喂到你嘴里了。
第5楼 lena 发表于 2008-04-04 22:29
初级用户 发帖 67 积分 154
其实我就是想找个现成的.
第6楼 lena 发表于 2008-04-04 22:47
初级用户 发帖 67 积分 154
set /p pass=请输入压缩文件密码:
set /p type=请指定压缩文件类型:
set /p inpath=请指定压缩文件路径:
set /p outpath=指定输出文件夹路径:
set /p note=指定注释文件的路径:

Dir /b %path%/*.%type% > %temp%\rarfile.list
for %variable in (%temp\rarfile.list) do rar a o- p[%pass%] t

大哥些,RAR的帮助那里有啊,我的RAR是英文的,不是很懂啊..

帮我完成吧,我晕了....
第7楼 plp626 发表于 2008-04-04 22:59
银牌会员 发帖 1,020 积分 2,278
我是练练手,你测试成功了告诉我,
^_^
放到你那300多个文件所在目录内运行
你先运行测试,然后就会了

@echo off

for %%a in (*.*) do rar a -hpjv ..\%%~na.rar "%%a"

[ Last edited by plp626 on 2008-4-4 at 11:01 PM ]
第8楼 lena 发表于 2008-04-04 23:08
初级用户 发帖 67 积分 154
成功,就是他放到上一个目录去了..

..\%%~na.rar

%%~na 是什么变量啊?
第9楼 lena 发表于 2008-04-04 23:14
初级用户 发帖 67 积分 154
@echo off
set rar="%ProgramFiles%\WinRAR\Rar.exe"
set /p pass=请输入压缩文件密码:
set /p type=请指定压缩文件类型:
set /p inpath=请指定压缩文件路径:
set /p outpath=指定输出文件夹路径:
set /p note=指定注释文件的路径:

for %%a in (%inpath%\*.%type%) do rar a -hp%pass% -z%note% %outpath%\%%~na.rar "%%a"

楼上的大侠,你看我这样改行不.
第10楼 lena 发表于 2008-04-04 23:26
初级用户 发帖 67 积分 154
@echo off
set rar="%ProgramFiles%\WinRAR\Rar.exe"
set /p pass=请输入压缩文件密码:
set /p type=请指定压缩文件类型:
set /p inpath=请指定压缩文件路径:
set /p outpath=指定输出文件夹路径:
set /p note=指定注释文件的路径:

for %%a in (%inpath%\*.%type%) do rar a -p%pass% -z%note% %outpath%\%%~na.rar "%%a_%random%"

蓝色部分为命名,随机数添加后不能正常执行,大伙帮我瞧瞧.
第11楼 terse 发表于 2008-04-05 01:25
银牌会员 发帖 946 积分 2,404
这样吧
@echo off
set rar="%ProgramFiles%\WinRAR\Rar.exe"
set /p pass=请输入压缩文件密码:
set /p type=请指定压缩文件类型:
set /p inpath=请指定压缩文件路径:
set /p outpath=指定输出文件夹路径:
set /p note=指定注释文件的路径:
for %%a in ("%inpath%\*.%type%") do %RAR% a -p%pass% -z%note% "%outpath%\%%~na_%random%.rar" "%%a"
pause
第12楼 cad55 发表于 2008-04-05 13:09
高级用户 发帖 329 积分 620
楼主呀...用什么BAT呀........

在WINRAR.的打包选项中...不是有你要的设置吗....
第13楼 uemuem 发表于 2008-04-05 19:42
初级用户 发帖 68 积分 153 来自 上海
呵呵,应该比较简单

[ Last edited by uemuem on 2008-4-5 at 07:45 PM ]
第14楼 lena 发表于 2008-04-05 21:57
初级用户 发帖 67 积分 154
很多啊,一个文件制作一个压缩包啊。。
第15楼 nipo 发表于 2008-04-26 13:18
中级用户 发帖 106 积分 228
%%~na,应该是用来命名的吧,不知道这是什么规则?
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023