当使用 robocopy 时,如何跳过现有或相同大小的文件?

问题描述 投票:2回答:2

我有这段代码。

@echo on
set source="R:\Contracts\"
set destination="R:\Contracts\Sites"

::Not sure if this is needed
::It guarantees you have a canonical path (standard form)
for %%F in (%destination%) do set destination="%%~fF"

for /r %source% %%F in (.) do if "%%~fF" neq %destination% ROBOCOPY "%%F" %destination% *.srt *.pdf *.mp4 *.jpg /COPYALL /R:0

Pause

我不知道上面的代码是有 "SKIP命令 "还是有 "跳过命令",如果文件存在,还是跳过,如果文件大小相同?

batch-file robocopy
2个回答
7
投票

你想排除相同大小的文件,还是没有变化的文件? 如果是后者,使用 /XO 选项来排除那些比被复制的文件旧的文件。

RoboCopy "%%F" %destination% *.srt *.pdf *.mp4 *.jpg /COPYALL /XO /R:0

-3
投票

您是否想要镜像源文件和目标文件?ROBOCOPY 镜像

也许也值得看看FFT开关

你当然可以使用RAID 1,但我更喜欢使用独立驱动器,以获得灵活性。

说到这里,我发现robocopy经常重新复制那些不需要复制的文件。 也许一个服务正在调整源中的日期,所以它们出现在后面。

我想知道如何跳过相同大小的文件并忽略日期,因为我知道如果我的媒体文件的大小相同,文件就没有改变。

© www.soinside.com 2019 - 2024. All rights reserved.