xyxel
Апрель 18, 2010 16:37:36
Как узнать когда был скопирован файл в определенную директорию?
Когда был последний доступ к файлу и когда он последний раз был изменен - не подходит.
Спасибо.
Ferroman
Апрель 18, 2010 19:52:47
На известных мне файловых системах - никак.
Можно, разве что, следить за изменениями в папке.
igor.kaist
Апрель 19, 2010 12:24:21
Тут наверное имелось в виду узнать свойства файла а не отследить момент когда это произошло.
os.stat вам в помощь.
Ferroman
Апрель 19, 2010 15:38:56
os.stat всё равно не даст сказать когда был скопирован файл. Я вообще не уверен можн ли узнать копия ли файл, или оригинал (кроме случая, когда время создания файла старше времени создания папки в которой тот лежит).
knkd
Апрель 19, 2010 18:08:55
Ferroman
Я вообще не уверен можн ли узнать копия ли файл, или оригинал (кроме случая, когда время создания файла старше времени создания папки в которой тот лежит).
А для папки сохраняется время изменения?
Копирование файла есть изменение содержимого директории, а значит можно однозначно сказать что в эту директорию в такое-то время что-то было скопировано/удалено.
Более точно невозможно.
Ferroman
Апрель 19, 2010 18:32:54
Для NTFS сохраняется, а для FAT - нет. Файловые системы для линукса поддерживают последние изменения в папке, но нужно смотреть что именно имеется в виду под этими самыми “пследними изменениями”.
igor.kaist
Апрель 19, 2010 18:55:03
А вообще, порыться можно:
Для linux:
http://pyinotify.sourceforge.net/Дли windows: вроде функция watch из модуля fs пакета winsys подходит
http://timgolden.me.uk/python/winsys/fs.html (кстати интересная штука)