Копировать файл при изменении файла в Windows 8.1

232
Fredrik P

Я хотел бы настроить правило в Windows 8.1 для копирования определенного файла в другое место, когда он изменяется. Как я могу сделать это?

0
Какой тип файла, с каким приложением вы получаете к нему доступ? Tog 8 лет назад 0
@Tog Это простой текстовый файл. Я думаю, что ответы ниже в значительной степени прибивают это. Я просто еще не удосужился попробовать. Fredrik P 8 лет назад 0

2 ответа на вопрос

2
Karan

Для этого вы можете использовать robocopy со следующими параметрами:

/MON:n :: MONitor source; run again when more than n changes seen /MOT:m :: MOnitor source; run again in m minutes Time, if changed 
2
Peter Hahndorf

Создайте командный файл с таким содержимым:

robocopy.exe C:\sourceDir C:\TargetDir FileName.txt /MON:1 

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

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

Если вам нужна копия в режиме реального времени, вы можете использовать функцию Windows FileSystemWatcher, которую вы должны использовать из скрипта или программы, например скрипта PowerShell, но это немного сложнее, чем однострочный пакетный файл ,

Извините за поздний ответ, возможно ли иметь разные имена для исходного и конечного файлов? Fredrik P 8 лет назад 0
@FredrikP - Используя первый метод с Robocopy, Нет, он использует имя исходного файла в качестве имени назначения. Если вы пишете свое собственное решение, используя FileSystemWatcher, вы можете изменить имена. Peter Hahndorf 8 лет назад 1