批处理文件复制最新文件,然后删除原始文件

时间:2017-03-31 16:03:02

标签: batch-file vbscript

我正在尝试创建一个批处理文件,该文件在目录中找到最新文件,将其复制到新目录,然后删除原始文件。除删除部分外,一切正常。这就是我所拥有的。任何帮助将不胜感激。

@echo off
set source="C:\BLEND2\Results\LCBlend"
set target="z:\Blenders"
set NewestFile=

FOR /F "delims=" %%I IN ('DIR %source%\*.* /A:-D /O:-D /B') 
DO set NewestFile=%%I
COPY %source%\"%NewestFile%" %target%
del %source%\%NewestFile%

1 个答案:

答案 0 :(得分:1)

您的DO需要与右括号位于同一行,您的代码也会检索最新的文件而不是最新的。

尝试使用Move代替Copy后跟Delete的此更改版本:

@Echo Off
Set "source=C:\BLEND2\Results\LCBlend"
Set "target=Z:\Blenders"

For /F "Delims=" %%A In ('Dir/B/A-D/OD "%source%"') Do Set "NewestFile=%%A"
Move "%source%\%NewestFile%" "%target%"
相关问题