Пакетный файл для копирования файлов из одной папки в другую папку

У меня есть папка для хранения в сети, в которой все пользователи будут хранить свои активные данные на сервере. Теперь этот сервер будет заменен новым из-за проблемы с местом, поэтому мне нужно скопировать файлы подпапок из старой папки хранилища серверов в новую папку хранения сервера. У меня есть ниже:

из\Oldeserver\storage\data и files в \New server\storage\data и files.

Ответ 1

xcopy.exe определенно ваш друг здесь. Он встроен в Windows, поэтому его стоимость ничто.

Просто xcopy /s c:\source d:\target

Вы, вероятно, захотите изменить несколько вещей; некоторые из добавленных нами опций включают следующие:

  • /s/e - рекурсивная копия, включая копирование пустых каталогов.
  • /v - добавьте это, чтобы проверить копию оригинала. медленнее, но для параноидальных.
  • /h - система копирования и скрытые файлы.
  • /k - копировать атрибуты только для чтения вместе с файлами. в противном случае все файлы станут read-write.
  • /x - если вам нужны разрешения, вы можете захотеть /o или /x.
  • /y - не запрашивать перед перезаписыванием существующих файлов.
  • /z - если вы считаете, что копия может выйти из строя, и вы хотите ее перезапустить, используйте это. Он помещает маркер в каждый файл по мере его копирования, поэтому вы можете повторно запустить команду xcopy, чтобы выбрать, откуда она остановилась.

Если вы считаете, что xcopy может завершиться неудачно (например, когда вы копируете зараженное сетевое соединение) или что вы должны остановить его и хотите продолжить его позже, вы можете использовать xcopy /s/z c:\source d:\target.

Надеюсь, что это поможет.

Ответ 2

Просто, чтобы быть понятным, когда вы используете xcopy /s c:\source d:\target, поместите "вокруг" c:\source и d:\target, иначе вы получите сообщение об ошибке.

т.е. если в пути есть пробелы, т.е. если у вас есть:

"C:\Some Folder\*.txt"

но не требуется, если у вас есть:

C:\SomeFolder\*.txt

Ответ 3

Мое избранное для резервного копирования:

ROBOCOPY "C:\folder" "C:\new_folder" /mir

/mir для зеркала. Вы также можете использовать /mov для перемещения файлов. Он воспроизводит ту же самую папку. Он может удалять/перезаписывать файлы по мере необходимости. Отлично работает для меня. Это быстрее, чем xcopy/copy. Он также встроен в Windows.

Источник: http://technet.microsoft.com/en-us/library/cc733145.aspx

Ответ 4

Вы можете взглянуть на XCopy или RoboCopy, которые являются довольно комплексными решениями почти для всех операций копирования файлов в Windows.

Ответ 5

Чтобы обойти "указать имя файла или имя каталога в целевой (F = файл, D = каталог)?" подскажите с помощью xcopy, вы можете сделать следующее...

echo f | xcopy /f /y srcfile destfile

или для тех из нас, кто просто копирует большие подструктуры/папки:

use/i, который указывает, что назначение должно быть каталогом при копировании более одного файла

Ответ 6

Посмотрите на инструмент Windows rsync NASBackup. Это будет бонус, если вы знакомы с командами rsync.