С помощью xperf я могу создать трассировку и получить «плоский» список всех файлов, читаемых следующим образом:
xperf -on FileIO + FILE_IO + FILE_IO_INIT + FILENAME -stackwalk FileRead + FileWrite + FileDelete
xperf -start FileIOSession -heap -PidNewProcess "C: \ Python27 \ x86 \ python.exe scratchy.py" -WaitForNewProcess -BufferSize 1024 -MinBuffers 128 -MaxBuffers 512 -stackwalk HeapAlloc + HeapReallohef.1005 *
xperf -stop FileIOSession -stop -d fileio.etl
xperf -i fileio.etl -o fio_output.txt -a имя файла
К сожалению, файл fio_output.txt содержитсписок всех мыслимых файлов, к которым был получен доступ (из моего веб-браузера, IDE и т. д.).Еще более неприятно, что если я вручную открою xperfview и открою Сводную таблицу ввода / вывода файлов, я смогу увидеть свой процесс (в данном случае python.exe) и один файл, который он читает (в целях тестирования), но не может найтиспособ вывести те же данные в CLI, что мне и нужно, - автоматический автоматический способ получения информации о доступе к файлам.