Как найти все файлы, которые программа открывает/читает/записывает?

Как найти все файлы, которые программа открывает/читает/записывает?

Просто интересно, есть ли бесплатное программное обеспечение для Mac, которое проверяет, какие файлы открываются/читаются или записываются во время выполнения данного программного обеспечения, и возвращает их в виде трех графиков. Я уверен, что видел что-то подобное в прошлом, но не могу вспомнить его название.

Заранее спасибо!

решение1

Вы можете подумать оfseventer, но он показывает только измененные файлы (а не те, которые только что читаются) и показывает все изменения, а не только те, которые были внесены определенной программой.

Другие возможные не совсем ответы: в Activity Monitor вы можете «проверить» процесс и (если вы его владелец) увидеть, какие файлы он открыл. В Terminal вы можете использовать команду lsofдля вывода списка файлов, открытых всеми вашими процессами (если вы администратор, вы можете использовать команду sudo lsofдля просмотра процессов, которыми вы не владеете). Также ознакомьтесь с командами Terminal fs_usage, filebyproc.d, opensnoop, и rwsnoop. Наконец, если у вас есть Xcode (набор инструментов разработчика Apple), ознакомьтесь сИнструменты.

решение2

fseventerтакже есть возможность включать только что открытые файлы:

opensnoopпечатает файлы, открытые процессами:

sudo opensnoop -n processname

решение3

У меня на macOS Ventura opensnoopэто не особо работало, но lsofсвою задачу выполняло.

top -l 1     #find the process ID of the FortiClientUpdater
sudo lsof -p 18592     #look for a suspicious entry, in my case the last one
open /private/var/folders/w3/my9vhvh48xjb4h0059bc_ssh0000gn/T/fctupdate/obj_1_TGiK3k

Вот оно, временное местонахождение установщика.

Связанный контент