Программное обеспечение

Можно ли системными средствами в Windows 10, синхронизировать две папки на разных физических дисках?

Здравствуйте.
Условия: есть в ноуте два диска SSD и HDD. На SSD система и несколько рабочих папок, (при этом 75% объёма свободных). На HDD все данные, ну типа архива.
Задача: системными средствами синхронизировать две папки на этих дисках, без выхода в сеть (ну без облачных сервисов!) это важно!
В общем надо чтобы данные которые обновлялись в SSD в течении дня, с какой-то регулярностью (может раз в сутки), копировались на архивный HDD.
Можно это оформить средствами Виндовс 10, и желательно в автоматическом режиме чтобы синхронизация осуществлялась.
Спасибо за полноценный ответ.
Сергей Сяглов
Сергей Сяглов
19 571
сам подключишь?))

Sub Backup(TargetFolder, BackupFolder)
If FSO.FolderExists(TargetFolder) Then
If FSO.FolderExists(BackupFolder) Then
For Each F In FSO.GetFolder(TargetFolder).Files
If FSO.FileExists(BackupFolder & "\" & F.Name) Then
If Not DateDiff("s", FSO.GetFile(BackupFolder & "\" & F.Name).DateLastModified, F.DateLastModified) = 0 Then F.Copy BackupFolder & "\" & F.Name, True
Else
F.Copy BackupFolder & "\" & F.Name, True
End If
Next
For Each F In FSO.GetFolder(BackupFolder).Files
If Not FSO.FileExists(TargetFolder & "\" & F.Name) Then F.Delete
Next
For Each F In FSO.GetFolder(BackupFolder).SubFolders
If Not FSO.FolderExists(TargetFolder & "\" & F.Name) Then F.Delete
Next
For Each F In FSO.GetFolder(TargetFolder).SubFolders
If Not F.Attributes = 1046 Then Call Backup(F.Path, BackupFolder & "\" & F.Name)
Next
Else
FSO.GetFolder(TargetFolder).Copy BackupFolder, True
End If
Else
Exit Sub
End If
End Sub

это функция бэкапа на vbs (у меня считается эталонной)) )
а вот функция синхронизации (тоже эталонная :D )

Sub Synchron(Folder1, Folder2)
If FSO.FolderExists(Folder1) Then
If FSO.FolderExists(Folder2) Then
For Each F In FSO.GetFolder(Folder1).Files
If FSO.FileExists(Folder2 & "\" & F.Name) Then
If DateDiff("s", F.DateLastModified, FSO.GetFile(Folder2 & "\" & F.Name).DateLastModified) > 0 Then
FSO.GetFile(Folder2 & "\" & F.Name).Copy F.Path, True
Else
F.Copy Folder2 & "\" & F.Name, True
End If
Else
F.Copy Folder2 & "\" & F.Name, True
End If
Next
For Each F In FSO.GetFolder(Folder2).Files
If Not FSO.FileExists(Folder1 & "\" & F.Name) Then F.Copy Folder1 & "\" & F.Name, True
Next
For Each F In FSO.GetFolder(Folder1).SubFolders
If Not F.Attributes = 1046 Then Call Synchron(F.Path, Folder2 & "\" & F.Name)
Next
For Each F In FSO.GetFolder(Folder2).SubFolders
If Not F.Attributes = 1046 Then Call Synchron(Folder1 & "\" & F.Name, F.Path)
Next
Else
FSO.GetFolder(Folder1).Copy Folder2, True
End If
Else
If FSO.FolderExists(Folder2) Then
FSO.GetFolder(Folder2).Copy Folder1, True
Else
Exit Sub
End If
End If
End Sub

отличие бэкапа от синхронизации в том, что он воссоздаёт образ папки со всеми изменениями, т. е. если ты что-то удалил, то и из бэкапа тоже удалится.
А синхронизация полезна если ты туда сюда гоняешь файлы с компа на комп.
Андрей Маряхин
Андрей Маряхин
5 333
Лучший ответ
Рустам Алиев это что за параша?
Сергей Сяглов Спасибо уважаемый, но ты не Кодер - ты реальный КОЛДУН!
Нет, это в положительной коннотации.
Я тут как коза в афишу смотрю.
Нутром то я понимаю, что ты прав, но что с этими ценнейшими данными делать, вот пока не знаю.
Подскажи, будь добр, это что, скрипт? или вообще, что с этим набором команд делать?
Сергей Сяглов Да, рабочая схема. Но только не получается "связать" уже имеющиеся папки. При указании "куда архивировать", система просто указывает один из логических дисков на HDD.
Но по любому, это уже платформа, чтобы о чём-то думать дальше.
Спасибо.
нет, нельзя
Виталий Белоус
Виталий Белоус
83 747
10 на это не способна
Алик Курбанов
Алик Курбанов
36 358
сделай скрипт/программу на копирование этих папок и добавь в планировщик
{...vip Uigur...}
{...vip Uigur...}
4 723

Похожие вопросы