Тестовое задание для Veeam Software

Написать программу, которая будет синхронизировать два каталога: каталог-источник и каталог-реплику. Задача программы – приводить содержимое каталога-реплики в соответствие содержимому каталога-источника.


Задание выполнено с использованием языка Python 3.8


Запуск программы из командной строки - python sinch_files.py dir_a dir_b time dir_log

  • sinch_files.py - имя файла программы
  • dir_a - каталог источник для синхронизации
  • dir_b - целевой каталог для синхронизации
  • time - периодичность синхронизации в минутах
  • dir_log - каталог для размещения лога синхронизации

В лог записываются события удаления, копирования, создания. Так же, программа рядом с исполняемым файлом создает файл sinch_date.txt, в котором автоматически указывается время последней синхронизации. Если переменная check_mod_file_time установлена в значение "1", то будут синхронизироваться только файлы созданные или измененные после последней синхронизации. Значение переменной "0" позволит синхронизировать все файлы исходного каталога целиком, вне зависимости от времени создания или изменения.