Equivalente a strace -feopen <command> no mac os X

131

Isso é útil para depuração (portanto, relacionado à programação). No linux, podemos usar o comando

strace -feopen python myfile.py

para descobrir quais módulos python e objetos compartilhados são carregados. Existe uma linha equivalente no macOS X?

Setjmp
fonte

Respostas:

180

Suponho que você quis dizer strace -fetrace=open?

dtruss -f -t abre python myfile.py
efémero
fonte
Olá pessoal, acabei de testar sua versão do strace (com -fetrace = open) e deu exatamente o mesmo resultado que o meu exemplo. Estou ansioso para testar seu comando dtruss em breve. Obrigado pela resposta rápida!
Setjmp
2
De alguma forma, hoje, o sudo dtruss não funciona para mim. É como se o Python não fosse executado!
Dima Tisnek
2
@qarma sudo-ing novamente pode resolver o seu problema: serverfault.com/questions/215510/…
ErikR 26/10/13
27
dtrussrequer privilégios de root, mas você pode não querer executar o comando que deseja rastrear como root. Consideresudo dtruss -f -t open sudo -u $USER python myfile.py
um nerd pago
7
Obtendo um erro com $ sudo dtruss -f -t open sudo -u $USER python: `dtrace: a proteção de integridade do sistema está dtrace: failed to execute sudo: dtrace cannot control executables signed with restricted entitlements
ativada