Как заставить robocopy удалить исключенные файлы в целевом каталоге

Как заставить robocopy удалить исключенные файлы в целевом каталоге

У меня есть кроссплатформенный инструментарий сборки, который копирует некоторые папки в место назначения. Я использую его robocopyв Windows и rsyncmacOS, потому что они поддерживают вывод прогресса в консоль. Команды были в таком виде:

robocopy "C:\Some\Source" "C:\Some\Destination" /MIR
rsync -a --progress --delete "/Some/Source/" "/Some/Destination"

Но теперь я столкнулся с ситуацией, когда мне нужно исключить некоторые файлы, которые могут появиться в исходном каталоге. И мне нужно, чтобы они были стерты в месте назначения, если они там были раньше. rsyncесть --delete-excludedопция:

rsync -a --progress --delete-excluded --exclude '*.jpg' "/Some/Source/" "/Some/Destination"

Но я не могу сделать robocopyтак, используя /XFопцию:

robocopy "C:\Some\Source" "C:\Some\Destination" /MIR /XF *.jpg

robocopyсохраняет старые исключенные файлы в месте назначения. Есть ли способ сделать так, чтобы robocopyвел себя как rsyncс --delete-excludedопцией? Я знаю, что могу позже просканировать дерево назначения, чтобы удалить исключенные файлы с помощью другой команды, но я хотел бы сделать это с помощью, robocopyпотому что дерево действительно огромное, и я хочу сэкономить время на операции копирования.

Связанный контент