![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-09 05:14 |
共 47,811 主题排行 / 349,895 发帖 / 今日 0 篇 / 48,253 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » 【已解决】删除全盘RAR文件内的指定文件批处理 |
| 可打印版本 932 / 13 |
| 第1楼 lg560852 | 发表于 2008-07-17 14:43 |
| 初级用户 发帖 26 积分 60 | |
|
【已解决】删除全盘RAR文件内的指定文件批处理 不知是否有误? 可否容错?(例如winrar安装路径或系统路径不同) 若是还想同时删除bb.txt该如何添加代码?(要求,aa.txt和bb.txt都要删除,若不存在即放过) [ Last edited by lg560852 on 2008-7-19 at 02:47 PM ] |
|
| 第2楼 lg560852 | 发表于 2008-07-17 15:55 |
| 初级用户 发帖 26 积分 60 | |
|
刚才试了下,直接报错
郁闷了,是不是查找出问题了? |
|
| 第3楼 HAT | 发表于 2008-07-17 16:00 |
| 版主 发帖 5,017 积分 9,023 | |
|
%a%从哪里来的?
|
|
| 第4楼 lg560852 | 发表于 2008-07-17 16:01 |
| 初级用户 发帖 26 积分 60 | |
|
囧,貌似写错了
应该是%i% 但我改了还是出那个提示 [ Last edited by lg560852 on 2008-7-17 at 04:21 PM ] |
|
| 第5楼 HAT | 发表于 2008-07-17 16:23 |
| 版主 发帖 5,017 积分 9,023 | |
|
囧,改成i%也不对,for命令没有这样的用法,你从哪里找到的这个代码?
|
|
| 第6楼 lg560852 | 发表于 2008-07-17 16:46 |
| 初级用户 发帖 26 积分 60 | |
|
帖子找不到了
只找到了以前拷贝下的代码 我看出来了,是我写错了,请哪位帮忙改下? [ Last edited by lg560852 on 2008-7-17 at 04:49 PM ] |
|
| 第7楼 lg560852 | 发表于 2008-07-18 04:11 |
| 初级用户 发帖 26 积分 60 | |
|
自己来顶一下,问题还是没能解决。
|
|
| 第8楼 balinger | 发表于 2008-07-18 13:22 |
| 中级用户 发帖 115 积分 356 | |
|
@echo off
for %%a in (c d e f g h i j k l m n o p q r s t) do (for /f "delims=" %%i in ('dir /s/b/a-d %a%:\*.rar') do ("C:\Program Files\winrar\rar.exe" d -inul "%%i" aa.txt bb.txt)) pause |
|
| 第9楼 lg560852 | 发表于 2008-07-18 14:13 |
| 初级用户 发帖 26 积分 60 | |
|
楼上兄弟您好
我试用了下,还是有那个提示:文件名、目录名或卷标语法不正确。 不知是否是我系统问题,我的系统是WIN2003。 |
|
| 第10楼 abcd | 发表于 2008-07-18 14:38 |
| 银牌会员 发帖 739 积分 1,436 | |
|
@echo off
for %%a in (c d e f g h i j k l m n o p q r s t) do for /f "delims=" %%i in ('dir /s/b/a-d %%a:\*.rar 2^>nul') do echo %%i pause>nul |
|
| 第11楼 lg560852 | 发表于 2008-07-18 14:41 |
| 初级用户 发帖 26 积分 60 | |
|
楼上的兄弟您好
在执行您的代码的时候出现错误提示:此时不应有2 我就将你的那个2及后面的(不知是不是不提示错误信息的意思)去掉了 然后批处理貌似可行了 请你过一下目 ::@echo off for %%a in (c d e f g h i j k l m n o p q r s t) do (for /f "delims=" %%i in ('dir /s/b/a-d %%a:\*.rar') do ("c:\progra~1\winrar\rar.exe " d -inul "%%i" aa.txt bb.txt)) pause |
|
| 第12楼 abcd | 发表于 2008-07-18 14:58 |
| 银牌会员 发帖 739 积分 1,436 | |
|
你没加上^,当然是不行的。
去掉了2>nul 是会出现找不到错误的。 |
|
| 第13楼 balinger | 发表于 2008-07-18 14:59 |
| 中级用户 发帖 115 积分 356 | |
|
winrar安装路径是什么?是不是要在winrar安装路径不确定的情况下?
|
|
| 第14楼 lg560852 | 发表于 2008-07-18 15:53 |
| 初级用户 发帖 26 积分 60 | |
|
抱歉由于测试时间较长,这么晚才回复。
非常感谢大家的帮助! 现在批处理执行基本成功! RE:12楼 那个我也不大清楚了,但是批处理确实运行成功了,您可以讲一下那段2^>nul的意思吗?我试过,加上或不加运行时好像没看出区别。 RE:13楼 WINRAR的默认安装路径是C:\Program Files\但我记得好像在DOS下要写成c:\progra~1\来着,不知对不对?若是要增加容错性,是否要添加代码获取RAR路径? 这个批处理总体执行效率还算可以,只要不碰上太大压缩包。 当碰上带密码的压缩包就会停止,所以我加上了 -p-参数 可以说这个问题已经解决了,但是还是想问一下,若是我想看看到底删除了那些RAR文件内的指定文件,也就是一个操作日志,该如何添加代码? [ Last edited by lg560852 on 2008-7-18 at 03:54 PM ] |
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |