3

Я обычно люблю Vista, но обнаружил, что возможности перемещения файлов просто плохие.

У меня есть эти две директории

C:\dir1\
C:\dir2\

Они оба содержат несколько подкаталогов, которые сами содержат файлы и подкаталоги и так далее. И они в основном имеют одинаковую структуру, но содержимое файлов отличается.

Что я хочу сделать, так это взять все подкаталоги C:\dir1\ и переместить их в C:\dir2\ , переписав то, что находится в C:\dir1\ .

Если я делаю это, перетаскивая в Проводнике Windows - это просто не работает. Он спрашивает, уверен ли я, что хочу слиться, но после этого он ничего не делает.

Если я делаю этот каталог за раз, иногда это работает, а иногда нет. И когда он работает, он оставляет исходный каталог на месте, пустой, что безвредно, но странно.

Какой хороший, автоматический и предпочтительный способ командной строки сказать «переместить содержимое этого каталога поверх содержимого этого каталога, да, я серьезно, да переписать все, нет, не задавайте мне больше вопросов, точка»?

Также, пожалуйста, скажите мне, если Windows 7 исправляет это дерьмо.

1 ответ1

8

xcopy c:\dir1 c:\dir2 /E /H /R /X /Y /I /K

делает трюк.

Работает с Vista и 7 из командной строки.

Для информации, это то, что переключатели делают в этой команде:

  • /E Копирует каталоги и подкаталоги, в том числе пустые.
  • /H Копирует также скрытые и системные файлы.
  • /R Перезаписывает файлы только для чтения.
  • /X Копирует настройки аудита файлов (подразумевает /O).
  • /Y Подавляет запрос на подтверждение того, что вы хотите перезаписать существующий файл назначения.
  • /I Если место назначения не существует и копируется более одного файла, предполагается, что место назначения должно быть каталогом.
  • /K Копирует атрибуты. Обычный Xcopy будет сбрасывать атрибуты только для чтения.

Вы можете узнать больше информации, набрав xcopy /? в командной строке.

Если вы хотите завершить "перемещение", просто удалите c:\dir1 с помощью rd c:\dir1 /S /Q

Возможно, стоит поместить эти две команды в командный файл (текстовый файл с концом .cmd или .bat) с помощью Блокнота. Тогда вам просто нужно дважды щелкнуть ярлык.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .