Синтаксис:

Синтаксис:

Я использую Windows 7 Professional, и вот мой сценарий:

Folder "Asd" (C:\)              Folder "Asd" (D:\)
File 1                          File 1 
File 2                          File 3 
File 3                          File 4
File 4
File 5

Я хотел бы выбрать папку на C:\ (конечно, не выбирая каждый отдельный файл) и скопировать ее в ту же папку на D:. Обычно копируются все файлы. Но мне нужно скопировать только файлы (из C:), которые содержатся в папке d:.

Поэтому в моем случае я хотел бы заменить только Файл 1, Файл 3 и Файл 4. Файл 2 и Файл 5 следует игнорировать.

Является ли это возможным?

решение1

Когда вы хотите скопировать,робокопиявсегда есть нужный переключатель, чтобы сделать это.
Здесь вы хотите/XLпереключитесь на исключение «одиноких» файлов:

robocopy C:\ D:\ /S /XL

Это будет работать с файлами и папками.

решение2

Попробуйте использоватьXCOPYкоманда:-

Синтаксис:

xcopy sourceDirectory DestinationDirectory /U /Y

 /U           Copies only files that already exist in destination.
 /Y           Suppresses prompting to confirm you want to overwrite an
              existing destination file.

Пример:

xcopy D:\Temp\test\*.* D:\Temp\test11 /U /Y

*.*- указывает все файлы в этом каталоге

Здесь он переопределяет файлы в папке назначения."D:\Temp\test11"папка с файлами из источника

решение3

Простой цикл for в сочетании с dir /bдолжен работать. Что-то вроде этого:

FOR /F %X IN ('dir /b D:\Asd') DO copy "C:\Asd\%X" "D:\Asd\%X"

Если вы используете пакетный файл, замените %Xна %%X(это связано со способом обработки переменных в Windows, он отличается от командной строки).

решение4

В дополнение к методам robocopyи xcopyвот решение сTCC/LE от JP Softwareиcopy:

копировать /cc:\asd\ d:\asd\

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