【发布时间】:2013-05-08 12:22:44
【问题描述】:
我有一个正在运行的程序,它可以批量处理一堆文档并将它们放在 DMS 中。当程序完成处理每个文档后,它会将其放置在另一个文件夹中。然后可以将其放置在名为successed 的子文件夹或名为failed 的子文件夹中。未成功上传到 DMS 的文档放在 failed 子文件夹中。这个过程每天都在重复,因此每天都会创建两个新文件夹,分别命名为“importresults_%datetime\succeeded”和“importresults_%datetime\failed”。
我想创建另一个批处理文件,每天检查新创建的子文件夹“importresults_%datetime\failed”的内容。对于其中的每个文档,我希望批处理文件记录它。
我尝试过这样的方法来检查某个文件夹中是否存在文件以开始,但这不起作用。
CheckFileExist.bat >> C:\CFE_log.txt
for /f %%i in C:\Dfolder do (
IF not EXIST echo %%i >> C:\CFE_log.txt
pause
这似乎在日志文件中不断循环。
【问题讨论】:
-
EXIST 之后你需要一些东西。文件名或包含文件名的变量。
-
另外,您希望将 for 更改为:
for /f %%i in ('dir C:\Dfolder /b /a-d') do (如果 Dfolder 包含您还希望处理的子文件夹,则将 /s 添加到 dir 开关。 -
我像马特建议的那样更改了 for 语句。我还通过添加 %%i 或 *.txt 更改了 EXIST 语句。两者都还没有成功。
-
%datetime有什么格式?
标签: file logging batch-file directory