是否可以复制一组文件,但如果文件已经存在则自动跳过?

是否可以复制一组文件,但如果文件已经存在则自动跳过?

我知道 copy 命令有一个选项,如果文件已经存在,可以自动替换它,但我想知道这是否是一种仅在文件不存在时才复制文件的方法(/Y)。我不知道批处理代码中的实际文件名,因为我使用 copy 命令中的通配符从源复制:

copy *.zip c:\destination

我之所以想要这样做而不是自动覆盖,是因为文件很大,跳过现有文件可以节省大量执行时间。它是通过网络共享完成的,因此复制这么多的数据可能需要一段时间……

附加信息:
这是一项批处理作业,它运行备份程序,将 zip 文件从我的计算机复制到共享服务器,并且如果批处理作业由于某种原因未完成(仅复制了部分 zip 文件),我需要再次运行该批处理,但仅针对那些之前未复制的 zip 文件。

答案1

这个命令帮我解决了这个问题:

XCOPY *.ZIP /D C:\DESTINATION

答案2

echo n|xcopy "[source]" "[destinaton]" 

查看 xcopy 的各种参数,以满足你的特定用途

答案3

Robocopy - 自动跳过目标中已有的文件

ROBOCOPY \some\folder c:\destination *.zip/S

答案4

robocopy通过使用并使用/M仅复制设置了存档标志的文件的选项,然后清除它,可以解决该问题。

robocopy /M *.zip c:\destination

维基百科上的这篇文章您会发现,这实际上与存档标志的最初用途非常相似。

相关内容