Estoy buscando el corresponsal de FileMon para OS X, que luego se incluyó en ProcessMon .
Por cierto, es esencial poder filtrar por proceso.
Estoy buscando el corresponsal de FileMon para OS X, que luego se incluyó en ProcessMon .
Por cierto, es esencial poder filtrar por proceso.
Respuestas:
Instruments, una parte del conjunto de desarrollo Apple Xcode, puede monitorear todo el acceso a archivos y escrituras. Ábralo desde /Applications/Xcode.app/Contents/Applications/Instruments.app, seleccione su aplicación o proceso y presione Iniciar. Tiene amplias opciones de filtro disponibles en los menús.
Las versiones anteriores de Xcode almacenan la aplicación en /Developer/Applications/Instruments.app
Ahí está el comando opensnoop
. Ejecutar sin argumentos, puede abrumarlo con la salida, pero puede ejecutarse con argumentos -n name
para limitar la salida a los procesos nombrados name
.
sudo opensnoop | grep .classpath
le da acceso a un archivo classpath, por ejemplo.
Launchd es la herramienta principal de nivel de sistema para monitorear archivos (y una carpeta es un archivo especial) ya que siempre se está ejecutando. Hazel es un programa que ayuda a poner una interfaz gráfica de usuario bonita alrededor de las WatchPaths lanzadas. Busque aquí muchos consejos sobre launchd, así como cientos de tutoriales, un buen artículo de Wikipedia y los documentos de desarrollo de Apple.
fseventsd registrará algunos cambios, por lo que puede usar FSeventer o acceder a esos archivos si launchd no es su taza de té.
fs_usage y lsof son herramientas de línea de comandos conscientes del proceso para aprovechar el subsistema IO mientras se ejecuta. El búfer fs_usage puede sobrecargarse, por lo que si desea algo más garantizado y menos "echar un vistazo rápido", es menos confiable para obtener resultados correctos como los otros comandos.
Nadie ha mencionado el Monitor de actividad, que se encuentra en la /Applications/Utilities
carpeta.
Haga clic en el Nombre del proceso en la lista, luego presione el botón "Inspeccionar" en la barra de herramientas.
Hay tres pestañas en la ventana resultante: Memory
, Statistics
, Open Files and Ports
. La Open Files and Ports
pestaña mostrará todos los archivos abiertos utilizados por el proceso.
La forma más rápida es:
$ lsof [path_to_file]
Esta solución no requiere la contraseña de root y le devuelve el siguiente resultado claro:
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
Hay una interfaz gráfica para lsof
escribir información. Es donationware de HAMSoft y se llama What's Keeping Me . Diseñado para responder que "¿Por qué no puedo eliminar esto de mi papelera?" pregunta que surge de vez en cuando en OS X, también resulta ser una forma práctica de observar los identificadores abiertos de E / S en los procesos en ejecución si solo tiene curiosidad sobre lo que está sucediendo. Le permite una búsqueda simple y filtrado.