Небольшая заметка о том, как можно воспользоваться системной утилитой вместо громоздких и непонятных программ на примере копирования файлов на внешний жесткий диск.

Недавно я купил новый внешний жесткий диск, однако мне не понравилось, как работает фирменная программа. А ведь мне всего-то и надо копировать новые и изменившиеся файлы из папок на локальном жестком диске на внешний. В Windows такая задача может быть решена стандартной "робокопией" (не путать с Робокопом wink) и файлом backup.bat (или .cmd) примерно такого содержания:

robocopy "E:\ВИДЕОАРХИВ" "G:\My Folders\ВИДЕОАРХИВ"
robocopy "E:\ФОТОАРХИВ" "G:\My Folders\ФОТОАРХИВ"
robocopy "E:\Мои документы" "G:\My Documents\Мои документы" /e /purge
pause

Есть, конечно, несколько нюансов. Для русских имен папок файл надо создавать в DOS-кодировке. Комбинацию параметров /e /purge можно заменить на /mir. Это как раз нужно для полной синхронизации папки источника (первый параметр) с приемником, иначе будут только добавляться новые файлы и перезаписываться обновленные, а также не будут скопированы пустые каталоги. В моем примере фото и видео фактически только добавляются, что позволяет копировать эти папки без дополнительных параметров. В документах же у меня постоянно идет всякая движуха, поэтому для них я предпочел "зеркалирование".

Что касается /mir (или /e /purge), то в интернете кто-то развел панику такого рода, что якобы при удалении файлов или папок из приемника происходит удаление в источнике. Это, конечно же, противоречит как документации, так и моим (и не только) тестам. Единственный случай, заслуживающий внимания, это использование символических ссылок - тут уже можно поверить в то, что можно напортачить. Или же если источник с приемником перепутать... crazy

G:\My Folders и G:\My Documents - это не более чем дань уважения к старому жесткому и поставлявшейся с ним утилите, которая делала именно то, что требовалось. pause в конце можно поставить на случай, если запускать скрипт из проводника, чтобы окно консоли автоматически не закрылось. Хотя антивирусу такой способ не очень нравится, поэтому мне проще сначала открыть командную строку и уже из нее "руками" запустить файл.


Категория: Решение проблем | Опубликовано 31.01.2019 | Редакция от 06.02.2019

Похожие материалы:


Комментарии, обсуждение

комментарии простроенны на платформе Disqus