Простая программа синхронизации файлов и папок. Руководство по быстрому выбору (скачать бесплатно программы для синхронизации файлов и папок)

Думаю каждый из нас задавался вопросом «Что это еще за Портфель появляется в меню Создать и каково его назначение?» Мне так же стало интересно, для чего нужен портфель в Windows. На первый взгляд может показаться, что Портфель выполняет такие же функции, как и папка, но имеет другую иконку, но это далеко не так. Дело в том, что непосредственно в Портфеле нельзя создавать файлы и папки, а лишь копировать их в портфель и изменять. Создавать же можно только в подкатегориях, т.е. во вложенных папках! А все это из-за того, что функциональность портфеля предназначена для выполнения синхронизации между файлами и папками.

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

Согласно справке, Microsoft рекомендует использовать портфель в двух ситуациях, при синхронизации файлов и папок с ПК по сети и между компьютером и съемным устройством. Я бы не стал использовать портфель для синхронизации по сети, так как намного проще дать доступ к ресурсам определенному пользователю и он через сеть сможет работать с документами. А вот синхронизацию через съемное устройство мы рассмотрим!

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

Создадим портфель в корне USB флешки (ПКМ \ Создать \ Портфель \ Рабочие документы)

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

Как я уже говорил ранее, мы не можем ничего создать в Портфеле, так как к его меню просто нет пункта «Создать»


Но, мы можем создавать файлы и папки внутри папок


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

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

Для этого мы можем либо нажать правой кнопкой мыши на Портфеле и выбрать «Обновить все»


Либо зайти в портфель и на панели инструментов нажать «Обновить все объекты»



Как вы видите из скриншота, с момента последней синхронизации я внес изменения в файл «Партнерство» и создал файл УУУУИИИИИ в подпапке. Так вот в процессе обновления файл «Партнерство» будет заменен, файл УУУУИИИИИ создан и таким образом на обеих сторонах будут идентичные файлы.

Чтобы получить более подробную информацию, вы можете щелкнуть ПКМ \ Подробности и при возникновении каких-то не стандартных ситуаций (оба файла были обновлены с момента создания связи с портфелем) принять правильное решение.


Так же перейдя в (Свойства файла (папки) \ Состояние) можно увидеть информацию, с каким файлом (папкой) он связан.

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

Большое спасибо, что поделились данным материалом! :-) Наш Центр Обучения вас не забудет!

Программы для синхронизации папок и файлов помогут вам сохранить обновленные копии файлов и папок в различных местах. Это могут быть разные компьютеры, сетевые диски, USB-накопители или же онлайн-хранилища. В то время как утилиты синхронизации могут быть использованы в качестве простого средства для создания резервных копий (так называемая односторонняя синхронизация), их реальное предназначение в поддержании идентичных наборов файлов и папок в нескольких местах.

Примером может служить ведение текущих версий одних и тех же файлов на нескольких ваших компьютерах, которые вы используете в разное время (двусторонняя синхронизация). Утилиты синхронизации папок отслеживают, какие файлы вы создали, изменили, или удалили. И, соответственно, вносят эти изменения в другие места.

Критерии оценки утилит синхронизации:

Хорошая утилита синхронизации должна уметь большинство из всего нижеследующего.

  • Поддержка двухсторонней синхронизации файлов.
  • Должна уметь скопировать любую папку или файл, даже если они в данный момент времени используются другими программами.
  • Корректная обработка конфликтов. Примером конфликта может быть изменение одного и того же файла в двух разных местах синхронизации.
  • Хранение записей об удалении файлов.
  • Обнаружение факта переименования файла.
  • Поддержка фильтров и правил для тонкой настройки области синхронизации. Примером может служить исключение определенных расширений файлов из процесса синхронизации.
  • Предварительный просмотр всех вносимых изменений с возможностью пользователю переопределить любые действия.
  • Планировщик задач и возможность автоматического обнаружения и запуска синхронизации, когда место синхронизации становится доступным (например, вы вставили флэшку).
  • Поддерживать синхронизацию как на локальной машине, так и в сети (например, сетевые папки).

Есть много претендентов в данном классе программ, но лишь пара из них поддерживает большую часть критериев.

Обзор бесплатных программ для синхронизации файлов и папок

Программа для синхронизации файлов и папок FreeFileSync лучший выбор

Allway Sync

Большой набор фильтров и правил. Поддержка FTP.
Месячный лимит копирования 40000 файлов. Нет копирует заблокированные файлы.

Чтение каталога осуществляется по команде get-childitem. Чтобы учитывались вложенные папки, к ней добавляется опция -recurse, а чтобы отличать файлы от папок, используется функция PSIsContainer (). Если она возвращает значение True, то элемент - папка, в ином случае - обычный файл:

$source = ¨c:files¨

$srcfolder = get-childitem $source -recurse | where-object {$_.psiscontainer}

$srcfiles = get-childitem $source -recurse | where-object {!$_.pciscontainer}

Для решения нашей несложной задачи потребуются четыре списка: первые два содержат исходные файлы и папки, а два оставшихся - итоговые файлы и папки. Процесс синхронизации сводится к перебору этих списков и копированию файлов из одной папки в другую.

В первом цикле проверяется, существуют ли в папке для резервного хранения исходные каталоги, и если их еще нет, то они создаются посредством команды new-item.

foreach ($folder in $srcfolders)

$srcpath = $source -replace ¨\¨,¨\¨ -replace ¨:¨,¨:¨

$dstpath = $folder.fullname -replace $srcpath,$destination

if ($dstpath -ne ¨¨) {

if (! (test-path $dstpath))

¨Создание папки ‘$dstpath’.¨

new-item $dstpath -type directory | out-null

Очень похожий цикл выполняется и при сравнении результирующего и исходного списка папок, тем самым создается точная структура вложенных папок. Два других цикла обрабатывают файлы: первый копирует обновленные объекты из исходной в результирующую папку, второй - отсутствующие в исходном каталоге - из итогового. Узнать, обновился ли файл, можно по его хэш-коду. Заметим, что, поскольку файлы открываются в режиме «только чтение», они не блокируются от использования другими программами. Впрочем, по правилам хорошего тона файл по окончании вычисления хэш-кода необходимо закрывать функцией Close ():

$md5 = new-object system.security.cryptography.md5cryptoserviceprovider

$fs = new-object system.io.filestream ($file,$mode,$access)

$hash = $md5.computehash ($fs) # хэш-код файла

$fs.close ()

Затирать более новый файл его старой копией бессмысленно, и потому добавим команды для сравнения дат изменения. При обратном перемещении отсутствующих в исходной папке файлов никаких проверок не требуется, достаточно просто исполнить инструкцию copy-item. Скрипт целиком приводится в листинге - ему передаются пути к исходной и результирующей папкам (не забудьте добавить закрывающие слэши, например c:filessource), а далее всю работу он выполняет самостоятельно и на экран лишь выводит информацию, что именно происходит. Заметим, даже если вы предварительно не создали итоговую папку, то скрипт создаст ее самостоятельно:

if (! (test-path $destination))

new-item $destination -type directory -force | out-null

Итак, этот скрипт поможет скопировать отсутствующие на флэшке фотографии, таблицы, текстовые документы и др., не тратя время на ручное пофайловое сравнение. Чтобы использовать его, на Рабочем столе можно создать несложный BAT-файл, указав в нем команду вида powershell.backup.ps1 c:filessrc d:backup (путь к скрипту обычно требуется приводить целиком). В дальнейшем несложно синхронизировать папки, щелкая на этом пакетном файле. Напомним, что разрешает исполнение неподписанных скриптов команда Set-ExecutionPolicy RemoteSigned, исполненная от имени «Администратора».

Хранить копии важных файлов в совершенно незащищенном виде, пожалуй, не совсем верно с точки зрения безопасности. Система Windows 7, несмотря на все усилия Microsoft, остается уязвимой к вирусам, червям и прочим зловредам. До документов, которые постоянно лежат, по сути, в открытом доступе, они добираются без проблем. К счастью, в операционной системе появилось весьма полезное средство - виртуальные диски, которые монтируются и отключаются на лету. Они подходят и для резервирования каких-либо важных файлов, обращаться к которым может ограниченное число пользователей.

Виртуальный диск представлен в системе как файл формата VHD (Virtual HardDisk), имеющий полную структуру и содержание, сходные с теми, что у жесткого диска. Создается он с помощью встроенной в Windows 7 служебной программы для управления компьютером, которая запускается через модуль compmgmt.msc. В окне этой программы нужно щелкнуть на строке «Управление дисками» и выбрать в меню команду «Действие Создать виртуальный диск». Для нового виртуального диска задается размер, а затем том форматируется. На последнем этапе можно назначить букву диска или привязать VHD-файл к NTFS-папке.

Последний способ интересен тем, что копировать допускается в определенную папку независимо от того, где находится виртуальный том. Отмонтировав виртуальный том в утилите для управления компьютером, можно быть уверенным, что до самой последней копии важных документов ни вирусы, ни любопытные пользователи не доберутся. Сам виртуальный том, т. е. файл с расширением VHD, можно скопировать на резервный носитель. Дополнительная мера безопасности - шифрование виртуального тома, доступное с помощью BitLocker пользователям максимальной и бизнес-версии Windows 7. При подключении такого защищенного тома (а его можно использовать и на других ПК, причем даже там, где BitLocker не установлен) Windows попросит указать логин и пароль.