中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 如何调用rar.exe分卷压缩并添加注释?
作者:
标题: 如何调用rar.exe分卷压缩并添加注释? 上一主题 | 下一主题
Mxark
初级用户




积分 64
发帖 30
注册 2007-3-26
状态 离线
『楼 主』:  如何调用rar.exe分卷压缩并添加注释?

网上找了个使用批处理调用RAR压缩并分割文件的批处理--RAR自动分卷压缩助手,但是唯一的不足就是没有添加注释功能。

贴出截取的代码片段
@echo off
set size=500k
set BBSpath=c:\bbsup

if {%1}=={} goto readme

echo:: --------------------------------------------------------------------
echo::              定位 rar.exe 目录位置,请确认已经安装了Winrar
echo:: --------------------------------------------------------------------
reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Classes\.rar\ShellNew" /v "FileName">%temp%\$cd$.txt
for /f "skip=4 tokens=3 delims=        " %%i in (%temp%\$cd$.txt) do set rarpath=%%~dpi
del %temp%\$cd$.txt

if exist "%rarpath%rar.exe" goto rarfile
if exist "%ProgramFiles%\winrar\rar.exe" set rarpath=%ProgramFiles%\winrar\
if not exist "%ProgramFiles%\winrar\rar.exe" goto exit

echo:: --------------------------------------------------------------------
echo::           开始使用 rar.exe 分卷压缩目标文件
echo:: --------------------------------------------------------------------
:rarfile
FOR /F "delims=" %%i IN ('echo %*') DO set name=%%~ni
md %BBSpath%
md %BBSpath%\%name%
set ext=%~x1
echo:: -----------------------------------------------------------------
echo::     -m<n>   设置压缩模式:
echo::   -m0 存储;-m1 最快;-m2 较快; -m3 标准; -m4   较好; -m5 最好
echo:: ------------------------------------------------------------------
set level=5
if {%ext%}=={.7z} set level=0
if {%ext%}=={.7Z} set level=0
if {%ext%}=={.rar} set level=0
if {%ext%}=={.RAR} set level=0
if {%ext%}=={.jpg} set level=0
if {%ext%}=={.JPG} set level=0

echo:: --------------------
echo::     压缩开始了!
echo:: --------------------
[color=Red]"%rarpath%rar.exe" a  -ep1 -m%level% -v%size% %BBSpath%\%name%\%name%.rar %1[/color]

:end
set size=
set BBSpath=
set name=
set rarpath=
set level=
将此段"%rarpath%rar.exe" a  -ep1 -m%level% -v%size% %BBSpath%\%name%\%name%.rar %1

改成
set test=C:\Program Files\WinRAR\1.txt
"%rarpath%rar.exe" a -ep1 -m%level% -v%size% -z"%test%" %BBSpath%\%name%\%name%.rar %1

结果只给第一个分卷添加了注释,其它的都没加上,不知何解?难道需要循环添加?

如何给需要压缩的文件或文件夹分卷且给每个分卷添加上注释?请各位网友完善下,谢谢!

[ Last edited by Mxark on 2010-5-14 at 13:43 ]

2010-5-13 11:56
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Hanyeguxing
银牌会员

正在学习中的菜鸟...


积分 1039
发帖 897
注册 2009-3-1
来自 在地狱中仰望天堂
状态 离线
『第 2 楼』:  

1,因为分卷压缩文件修改是禁用的,所以不可以为分卷压缩追加注释。
2,注释仅保存在第一分卷上。

   此帖被 +1 点积分    点击查看详情   
评分人:【 Mxark 分数: +1  时间:2010-5-14 13:42




批处理之家 http://bbs.bathome.net/forum-5-1.html
2010-5-13 20:25
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Mxark
初级用户




积分 64
发帖 30
注册 2007-3-26
状态 离线
『第 3 楼』:  

原来如此。谢谢!

2010-5-14 13:42
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
nothinglms
新手上路





积分 3
发帖 3
注册 2009-11-3
状态 离线
『第 4 楼』:  

学习了,谢谢提供

2010-6-24 23:47
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: