Windows cmd shell xcopy в сетевой каталог не работает

Я пытаюсь создать командный файл, который будет копировать все новые файлы и папки из исходной папки в сетевой каталог. Все новые подкаталоги и новые файлы должны быть скопированы (резервное копирование).

Мой код:

xcopy "C:\Source" "T:\Backup" /d/i/s/q

(/d только для новых файлов, /i потому что источник - это каталог, /s для всех подкаталогов и файлов, /q только для подавления текста копии)

Источник содержит как подкаталоги, так и файлы (.txt).

При первом запуске копирует Все как надо. Когда я добавляю новый файл .txt в один из существующих подкаталогов и снова запускаю его, я получаю сообщение:

«Произошла ошибка, когда файл. Каталог не пуст. Создавался. Не удалось создать папку« T: \ Backup ». Скопировано 0 файлов. (Перевод со шведского, не 100% оригинал)

Дело в том, что когда я пробую эту команду для локального источника, например, "C: \ test" и проделайте ту же процедуру, что и она.

Кто может понять, почему это не работает для сетевого диска? Стоит ли мне попробовать другую команду, например robocopy?


person Flyckten    schedule 10.01.2014    source источник
comment
Если командный файл запущен в Windows 2000 или более поздней версии, то он работает не в MS-DOS, а в командной строке Windows (или консоли Windows). MS-DOS больше не используется (или очень редко).   -  person Dialecticus    schedule 10.01.2014


Ответы (3)


Пропустите xcopy и используйте вместо него robocopy с флагом / E. Он встроен во все последние версии Windows. Бесплатная загрузка для XP.

Пример:

robocopy c:\source T:\backup /E

Это скопирует все файлы из «исходной» папки в «резервную» папку, которые еще не были скопированы.

И если вы не хотите, чтобы вывод отображался на консоли (эквивалент параметра / Q в xcopy):

robocopy c:\source T:\backup /E /LOG:nul
person selbie    schedule 10.01.2014
comment
Значит, robocopy по умолчанию не копирует файлы, которые уже существуют в целевом объекте? Кажется, работает, спасибо большое! - person Flyckten; 10.01.2014

Robocopy должен быть лучше, потому что он должен создавать каталоги с переключателем \ E. Никаких перезаписей файлов, просто добавляет файл с дополнительными буквами или расширением команды ‹>. Еще надо дефрагментировать.

person Michael    schedule 21.08.2015
comment
Понятия не имею, что вы пытаетесь здесь сказать. Вы рекомендуете OP попробовать robocopy? Если да, то можете ли вы привести пример? - person Artjom B.; 22.08.2015

XCOPY "ПИСЬМО НА ПРИВОД: \ windows.old \ USERS" "\ computername \ D \ NAME \" / D / E / C / R / I / K / Y / f

person spider    schedule 31.03.2016
comment
XCOPY DRIVE LETTER: \ источник файла \ имя компьютера \ DRIVE LETTER \ место назначения файла \ / D / E / C / R / I / K / Y / f - person spider; 31.03.2016
comment
robocopy занимает больше времени и отлично работает с более длинными именами файлов тонкими 256 - person spider; 31.03.2016