## Краткое описание Есть файловая система и дерево каталогов, где документы редактируются пользователями. Файловая система очень большая и имеет тысячи вложенных директорий и десятки тысяч документов. Для каждого открытого документа создается резервная копия в формате `.bak` (например, `doc1.bak` для `doc1.doc`). В общем случае, резервные копии удаляются при закрытии файла, но иногда они остаются и не очищаются после работы. Исходные документы могут быть удалены, перемещены или переименованы, при этом в директории могут остаться `bak` файлы, которые не имеют соответствующего родительского `doc` файла. Необходимо удалить все такие резервные копии без родительского файла в заданном дереве каталогов. Также в дереве каталогов не нужны пустые директории. ## Задание Необходимо реализовать небольшую консольную утилиту для очистки дерева каталогов от временных файлов и удаления пустых директорий. Решение должно быть максимально эффективным с точки зрения скорости обработки/выполнения. Реализация должна отвечать следующим условиям: - использовать OOP методологию - использовать многопоточность для эффективного, быстрого выполнения очистки - использовать аргументы командной строки для получения пути к корневой директории дерева каталогов - следовать PEP20 #### Примерное время выполнения: 2 часа ### Дополнительное задание Добавить логирование для утилиты с использованием logging и настройка форматирования записи лога. ## Выполненное тестовое задание - Код опубликовать на GitHub - Отправить рекрутеру вместе с информацией о затраченном времени на выполнения задания ### Желаем удачи Команда разработки BWTGroup