Sto cercando il corrispondente OS X di FileMon, che è stato successivamente incluso in ProcessMon .
A proposito, è essenziale essere in grado di filtrare per processo.
Sto cercando il corrispondente OS X di FileMon, che è stato successivamente incluso in ProcessMon .
A proposito, è essenziale essere in grado di filtrare per processo.
Risposte:
Instruments - una parte della suite di sviluppo Xcode di Apple - può monitorare tutti gli accessi e le scritture di file. Aprilo da /Applications/Xcode.app/Contents/Applications/Instruments.app, seleziona l'applicazione o il processo e premi Start. Sono disponibili ampie opzioni di filtro nei menu.
Le versioni precedenti di Xcode memorizzano l'app in /Developer/Applications/Instruments.app
C'è il comando opensnoop
. Esegui senza argomenti, potrebbe sopraffarti con l'output, ma può essere eseguito con argomenti -n name
per limitare l'output ai processi denominati name
.
sudo opensnoop | grep .classpath
modo ti dà accesso ad un file classpath per esempio.
Launchd è il principale strumento a livello di sistema per il monitoraggio dei file (e una cartella è un file speciale) poiché è sempre in esecuzione. Hazel è un programma che aiuta a mettere una bella GUI attorno a WatchPath lanciati. Cerca qui molti suggerimenti su launchd, nonché centinaia di tutorial, un buon articolo di Wikipedia e i documenti di sviluppo di Apple.
fseventsd registrerà alcune modifiche, quindi potresti usare FSeventer o accedere a quei file se launchd non è la tua tazza di tè.
fs_usage e lsof sono strumenti a riga di comando sensibili al processo per attingere al sottosistema IO mentre è in esecuzione. Il buffer fs_usage può essere sovraccaricato, quindi se vuoi qualcosa di più garantito e meno di "dare una sbirciatina" è meno affidabile per i risultati corretti totali come gli altri comandi.
Nessuno ha menzionato Activity Monitor, trovato nella /Applications/Utilities
cartella.
Fare clic sul nome del processo nell'elenco, quindi premere il pulsante "Ispeziona" sulla barra degli strumenti.
Ci sono tre schede nella finestra risultante: Memory
, Statistics
, Open Files and Ports
. La Open Files and Ports
scheda mostrerà tutti i file aperti utilizzati dal processo.
Il modo più veloce è:
$ lsof [path_to_file]
Questa soluzione non richiede la password di root e ti restituisce il seguente, chiaro, risultato:
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
C'è un'interfaccia grafica per lsof
digitare informazioni. È donationware di HAMSoft e si chiama What's Keeping Me . Progettato per rispondere a "Perché non posso eliminare questo dal mio cestino?" domanda che si presenta ogni tanto su OS X, è anche un modo pratico per controllare gli handle I / O aperti sui processi in esecuzione se sei solo curioso di sapere cosa sta succedendo. Ti consente alcune semplici ricerche e filtri.