Setara dengan strace -feopen <command> pada mac os X


131

Ini berguna untuk debugging (karena itu terkait pemrograman). Di linux, kita bisa menggunakan perintah

strace -feopen python myfile.py

untuk mencari tahu modul python dan objek bersama mana yang dimuat. Apakah ada one-liner yang setara pada macOS X?

Jawaban:


180

Saya kira maksud Anda strace -fetrace=open?

dtruss -f -t buka python myfile.py

Hai ephemient, saya baru saja menguji versi strace Anda (dengan -fetrace = open) dan itu memberikan keluaran yang sama persis dengan contoh saya. Saya berharap dapat segera menguji perintah dtruss Anda. Terima kasih atas tanggapan cepatnya!
Setjmp

2
Entah bagaimana, hari ini, sudo dtruss tidak bekerja untukku. Seolah-olah Python tidak dieksekusi sama sekali!
Dima Tisnek

2
@qarma sudo-ing kembali lagi mungkin menyelesaikan masalah Anda: serverfault.com/questions/215510/…
ErikR

27
dtrussmembutuhkan hak akses root, tetapi Anda mungkin tidak ingin menjalankan perintah yang ingin Anda lacak sebagai root. Pertimbangkansudo dtruss -f -t open sudo -u $USER python myfile.py
kutu buku yang dibayar

7
Mendapatkan kesalahan dengan $ sudo dtruss -f -t open sudo -u $USER python: `dtrace: perlindungan integritas sistem aktif, beberapa fitur tidak akan tersedia` dan kemudiandtrace: failed to execute sudo: dtrace cannot control executables signed with restricted entitlements
blueyed
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.