Я пишу сценарий резервного копирования, который проходит через структуру папок и копирует все файлы, которые были изменены с момента последнего прогона. Я могу обнаруживать модификации и творения через свойства файлов (используя getmtime
и getctime
), но мне также необходимо определить, был ли перемещен файл. Есть ли простой способ сделать это без необходимости записи всей файловой структуры и сравнения с каждым обновлением?Можно ли определить, был ли файл перемещен в Python?
Обратите внимание, что это будет использоваться только для системы Windows.
EDIT: Если возможно, я бы хотел избежать использования внешних библиотек.
Знаете ли вы, что когда файл перемещен (переименован), его CTime обновляется? Но если вы полагаетесь на это для дифференциальной резервной копии, остерегайтесь, что если каталог переименован, то ctimes файлов в нем не обновляются. –
Когда файл копируется и вставляется в другое место, его ctime изменяется. Если его перетащить в другое место в проводнике, его ctime не изменится. Это то, что я пытаюсь обнаружить. –