Equivalente de strace -feopen <comando> en mac os X


131

Esto es útil para la depuración (por lo tanto, relacionada con la programación). En Linux, podemos usar el comando

strace -feopen python myfile.py

para averiguar qué módulos de Python y objetos compartidos se cargan. ¿Hay un one-liner equivalente en macOS X?

Respuestas:


180

Supongo que quisiste decir strace -fetrace=open?

dtruss -f -t abrir python myfile.py

Hola, efímero, acabo de probar tu versión de strace (con -fetrace = open) y me dio exactamente la misma salida que en mi ejemplo. Espero probar su comando dtruss en breve. ¡Gracias por la rápida respuesta!
Setjmp

2
De alguna manera, hoy, sudo dtruss no funciona para mí. ¡Es como si Python no se ejecutara en absoluto!
Dima Tisnek

2
@qarma sudo-back nuevamente podría resolver su problema: serverfault.com/questions/215510/…
ErikR

27
dtrussrequiere privilegios de root, pero es posible que no desee ejecutar el comando que desea rastrear como root. Consideresudo dtruss -f -t open sudo -u $USER python myfile.py
un nerd pagado el

77
Obteniendo un error con $ sudo dtruss -f -t open sudo -u $USER python: `dtrace: la protección de integridad del sistema está activada, algunas características no estarán disponibles` y luegodtrace: failed to execute sudo: dtrace cannot control executables signed with restricted entitlements
azulada
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.