Хочу поделиться своим маленьким открытием из удивительного мира Windows. Вздумалось мне на домашней машине с виндой копировать свои фото и видео на внешний USB диск, для пущей сохранности. При этом хотелось один раз скопировать все, а потом только новые или изменившиеся файлы. В винде есть стандартное средство для организации инкрементального бекапа, но использовать его не хотелось, так как оно создает файл в собственном формате, аналогичном tar; а я хочу, чтобы на внешнем диске была просто копия файлов, и в любой момент его можно было бы подключить к любому компьютеру и просмотреть содержимое. То есть мне нужно что-то вроде rsync.
И оказалось, что, начиная с Vista, в стандартную поставку винды входит замечательная утилита robocopy (robust copy), которая делает как раз то, что мне надо и многое другое. Я написал однострочный bat-файл с таким содержимым:
robocopy d:\my f:\ /mir
и положил на рабочий стол. Запуск этого файла эквивалентен команде
rsync -av --delete src dst
robocopy сверяет время последнего изменения файла или директории и копирует только изменившиеся.