仅当目标目录中不存在文件时,才如何在无限运行的批处理文件中复制文件?

时间:2018-11-02 11:21:06

标签: batch-file

我想将Microsoft Excel文件从源文件夹复制到目标文件夹,条件是仅在目标文件夹中不存在该文件时才复制该文件。我希望此命令在一个循环中执行,该循环无休止地运行,每次执行之间的等待时间为3秒。

下面是我的批处理文件:

:start
If Not Exist D:\Users\00002829\Downloads\QAS\QAS.xls xcopy "D:\Users\00002829\Downloads\Origin" "D:\Users\00002829\Downloads\QAS"
(
timeout /t 3
)
goto start

但是该批处理文件不起作用。即使文件存在于目标文件夹中,它也会始终复制文件。

1 个答案:

答案 0 :(得分:1)

正如每个人的建议,您未指定要复制的文件。 另外,对于单个文件,我更喜欢使用copy;把事情简单化。但是,请注意,如果正在使用该文件(qas.xls),则可能要切换到robocopy并利用其几乎无限的选项。

建议的代码:

:start
if not exist "d:\users\00002829\downloads\qas\qas.xls" (
    xcopy "d:\users\00002829\downloads\origin\qas.xls" "d:\users\00002829\downloads\qas"
)
timeout /t 3
goto start