Board logo

标题: [已解决]RAR批量提取文件的问题 [打印本页]

作者: luckboy45     时间: 2010-2-11 14:51    标题: [已解决]RAR批量提取文件的问题

感谢4楼的朋友给予解决问题!

  Quote:
  set RarPath="C:\Progra~1\WinRAR\Rar.exe"
for /f "usebackq delims=*" %%i in (12.ini) do %RarPath% M -Y -ED MYRAR.RAR "%%i"
ping 127.1 -n 5 >nul
for /f "usebackq delims=*" %%i in (12.ini) do if not exist "%%i" echo "%%i"成功提取 >>log.txt
ping 127.1 -n 5 >nul
exit

12.ini内容如下:

C:\TEMP\158.AVI
D:\123\58.JPG

上面的代码会提取并删除原文件,我要实现的效果是,如果没提取到则写入LOG.TXT里成这样

C:\TEMP\158.AVI 成功提取!
D:\123\58.JPG 文件不存在或者提取失败!

现在的代码无论提取成功与否都提示提取成功.......

希望会的朋友帮下忙.

[ Last edited by luckboy45 on 2010-2-12 at 17:18 ]
作者: slore     时间: 2010-2-11 20:35
???

存在才提示成功啊?不存在的不提示。。。不是都是提示提取成功,你这样的代码,是只记录成功的。

if not exist "%%i" (echo %%i 成功>>log.txt) else (echo %%i不成功>>log.txt)
作者: luckboy45     时间: 2010-2-12 08:43
很遗憾,楼上兄弟给的代码是我最早写的代码,这个代码无论文件是否存在,只要有一个被检测到成功,那么下面的都是成功,其实有很多根本不存在路径的文件,它还是提示成功.......期待有会的朋友帮下忙...
作者: terse     时间: 2010-2-12 11:07
CODE:  [Copy to clipboard]
@echo off
set RarPath="C:\Progra~1\WinRAR\Rar.exe"
(for /f "usebackq delims=*" %%i in (12.ini) do (
%RarPath% M -Y -ED MYRAR.RAR "%%i" >nul 2>nul&&echo %%i 成功提取||echo %%i文件不存在或者提取失败!
))>log.txt
pause





欢迎光临 中国DOS联盟论坛 (http://cndos.fam.cx/forum/) Powered by Discuz! 2.5