2010-08-20 29 views
0

任何有關此問題的幫助都會很棒。我感謝所有的貢獻!應用程序訪問的文件的名稱

讓我們說我正在運行守護進程,觀察具有鍵盤焦點的應用程序的行爲。我有它的PID和進程名稱。有什麼辦法可以查看該應用程序正在訪問哪些文件?

我在Objective-C,Cocoa和C編程。

謝謝!

編輯:

對不起,我應該澄清。我想從守護進程中以編程方式執行此操作。謝謝

+0

我不這麼認爲......你可以知道...... – 2010-08-20 12:05:34

回答

2

有一個名爲lsof的命令行工具,它向您顯示每個打開的文件以及打開的程序。你可以看看它的來源,然後定期做同樣的事情。

雖然我不認爲您可以截取讀取和寫入,但不是不使用DTrace,它需要根權力。

+0

'strace'不需要'root'權限並顯示所有文件訪問權限 – qrdl 2010-08-20 12:31:22

+0

qrdl:這似乎需要Linux。 – 2010-08-20 13:34:45

0

使用活動監視器(來自/ Applications/Utilities)。

選擇您的過程 - 按檢查按鈕。

選擇打開文件和端口選項卡。

+0

謝謝!但那不是我正在尋找的。檢查我的編輯。 – 2010-08-20 12:26:22

+1

行 - 顯然,答案是「是」,因爲活動監視器(和「lsof」)會這樣做。不過,這並不容易。玩的開心! – 2010-08-20 12:31:43

+0

沒錯。我想你是在間接地說,找到活動監視器的源代碼並從那裏開始。對不起,如果我誤解了:) – 2010-08-20 13:28:25

相關問題