Je recherche le correspondant OSM de FileMon, qui a ensuite été inclus dans ProcessMon .
BTW, il est essentiel de pouvoir filtrer par processus.
Je recherche le correspondant OSM de FileMon, qui a ensuite été inclus dans ProcessMon .
BTW, il est essentiel de pouvoir filtrer par processus.
Réponses:
Instruments, composant de la suite de développement Apple Xcode, peut surveiller tous les accès aux fichiers et les écritures. Ouvrez-le à partir de /Applications/Xcode.app/Contents/Applications/Instruments.app, sélectionnez votre application ou votre processus et appuyez sur Démarrer. Vous disposez de nombreuses options de filtrage dans les menus.
Les anciennes versions de Xcode stockent l’application dans /Developer/Applications/Instruments.app
Il y a la commande opensnoop
. Exécutée sans arguments, elle risque de vous submerger en sortie, mais elle peut être exécutée avec des arguments -n name
pour limiter la sortie aux processus nommés name
.
sudo opensnoop | grep .classpath
vous donne accès à un fichier classpath par exemple.
Launchd est l'outil principal au niveau du système pour surveiller les fichiers (et un dossier est un fichier spécial) car il est toujours en cours d'exécution. Hazel est un programme qui permet de créer une jolie interface graphique autour de Watchd Paths. Regardez ici pour de nombreux conseils sur launchd ainsi que des centaines de tutoriels, un bon article sur wikipedia et les documents de développement Apple.
fseventsd enregistrera certaines modifications - vous pouvez donc utiliser FSeventer ou accéder à ces fichiers si launchd n’est pas votre tasse de thé.
fs_usage et lsof sont des outils de ligne de commande sensibles au processus permettant d'exploiter le sous-système IO en cours d'exécution. La mémoire tampon fs_usage peut être surchargée. Par conséquent, si vous voulez quelque chose de plus garanti et de moins de "coup d'œil", il est moins fiable pour obtenir des résultats corrects comme les autres commandes.
Personne n'a mentionné Activity Monitor, trouvé dans le /Applications/Utilities
dossier.
Cliquez sur le nom du processus dans la liste, puis cliquez sur le bouton "Inspecter" de la barre d'outils.
Il y a trois onglets dans la fenêtre qui : Memory
, Statistics
, Open Files and Ports
. L' Open Files and Ports
onglet affichera tous les fichiers ouverts utilisés par le processus.
Le moyen le plus rapide est:
$ lsof [path_to_file]
Cette solution ne nécessite pas de mot de passe root et vous renvoie le résultat suivant clair:
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
Il existe une interface graphique pour lsof
saisir des informations. C'est un donware de HAMSoft intitulé " Ce qui me garde " . Conçu pour répondre à cette question "Pourquoi ne puis-je pas supprimer cela de ma corbeille?" Une question qui revient souvent sur OS X, c’est aussi un moyen pratique de surveiller les poignées d’entrées / sorties ouvertes sur les processus en cours si vous êtes simplement curieux de savoir ce qui se passe. Il vous permet une recherche et un filtrage simples.