Смотрите, какой процесс использует файл в Mac OS X


Я хотел бы иметь возможность отслеживать файл и посмотреть, какой процесс касается этого файла. Это возможно? Я знаю, что могу видеть список открытых процессов в Activity monitor, но я думаю, что это происходит быстро для меня, чтобы увидеть его. Причина этого в том, что я использую фреймворк, и я думаю, что системная версия фреймворка используется вместо отладочной версии, и я хотел бы посмотреть, какой процесс касается его.

5 82

5 ответов:

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

Я думаю, что лучше всего было бы фернлайтнинг fseventer.приложение. Это "nagware", и позволяет смотреть (графически) API fsevents в режиме реального времени.

все просто: sudo fs_usage | grep [path_to_file]

но я провел 2 минуты в Гугле и нашел ответ здесь.

$ lsof / grep [whatever]

где [whatever] заменяется именем файла, который вы ищете. С помощью этого вы можете увидеть, какая программа отчаянно держится за ваш о том, чтобы быть уничтоженным файлом. Как только вы выйдете из этой программы, Ваш мусор будет пустой.

более быстрый способ:

$ lsof [path_to_file]

это решение не требует пароля root и возвращает вам следующий, ясный, результат:

COMMAND    PID USER   FD   TYPE DEVICE SIZE/OFF     NODE NAME
Finder     497  JR7   21r   REG    1,2   246223 33241712 image.jpg
QuickLook 1007  JR7  txt    REG    1,2   246223 33241712 image.jpg

другой вариант:лень. Это бесплатный графический интерфейс с открытым исходным кодом для LSOF, о котором упоминали другие.