3

Есть ли какое-либо приложение, которое проверяет, какие файлы читает, изменяет запущенная программа и т.д., И может предоставить мне их список?

3 ответа3

3

Для Windows посмотрите на два инструмента Sysinternals (с тех пор, как они были приобретены Microsoft):

  • Process Explorer: какие файловые дескрипторы используются в любой момент времени.

Если [ProcessExplorer] находится в режиме дескриптора, вы увидите дескрипторы, которые открыл процесс, выбранный в верхнем окне; если Process Explorer находится в режиме DLL, вы увидите DLL и отображенные в памяти файлы, загруженные процессом.

  • Монитор процессов: отслеживание всех обращений к файловой системе с помощью процесса (или пути, или ...)

Process Monitor - это расширенный инструмент мониторинга для Windows, который в режиме реального времени показывает файловую систему, реестр и активность процессов / потоков.

  • handle - это еще один инструмент Sysinternals, похожий на Process Explorer тем, что в нем перечислены дескрипторы файлов процессов, но это консольное приложение, в отличие от двух других.
1

Это зависит от того, какую ОС вы используете, но BSD-подобные ОС, такие как Mac OS X, имеют fs_usage.

1

На платформах Unix вы можете использовать lsof | grep <pid> OR lsof -p <pid> для просмотра всех файлов, открытых определенным процессом.Однако в нем не указано, какие файлы читаются или записываются. Однако может быть создан скрипт для вычисления контрольных сумм файлов, чтобы узнать, пишется ли он или нет.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .