Я ищу высокопроизводительный метод или библиотеку для сканирования всех файлов на диске или в заданном каталоге и получения их основной статистики - имени файла, размера и даты модификации.
Я написал программу на python, которая использует os.walk
вместе с os.path.getsize
, чтобы получить список файлов, и она отлично работает, но не особенно быстро. Я заметил, что одна из бесплатных программ, которую я скачал, выполняла такое же сканирование намного быстрее, чем моя программа.
Есть идеи по ускорению сканирования файлов? Вот мой код на Python, но имейте в виду, что я совсем не женат на os.walk и совершенно готов использовать другие API (в том числе собственные API для Windows), если есть лучшие альтернативы.
for root, dirs, files in os.walk(top, topdown=False):
for name in files:
...
Я должен также отметить, что я понимаю, что код Python, вероятно, не может быть ускорен так сильно; Я особенно заинтересован в любых нативных API, которые обеспечивают лучшую скорость.