Tương đương của strace -feopen <lệnh> trên mac os X


131

Điều này rất hữu ích để gỡ lỗi (do đó liên quan đến lập trình). Trên linux, chúng ta có thể sử dụng lệnh

strace -feopen python myfile.py

để tìm ra mô-đun python và các đối tượng chia sẻ được tải. Có một lớp lót tương đương trên macOS X không?

Câu trả lời:


180

Tôi cho rằng bạn có nghĩa là strace -fetrace=open?

dtruss -f -t mở python myfile.py

Xin chào, tôi vừa thử phiên bản strace của bạn (với -fetrace = open) và nó đã đưa ra chính xác kết quả giống như ví dụ của tôi. Tôi mong muốn được thử nghiệm lệnh dtruss của bạn trong thời gian ngắn. Cảm ơn đã phản ứng nhanh chóng!
Setjmp

2
Bằng cách nào đó, hôm nay, sudo dtruss không làm việc cho tôi. Như thể Python hoàn toàn không được thực thi!
Dima Tisnek

2
@qarma sudo-ing trở lại một lần nữa có thể giải quyết vấn đề của bạn: serverfault.com/questions/215510/NH
ErikR

27
dtrussyêu cầu quyền root, nhưng bạn có thể không muốn chạy lệnh bạn muốn truy tìm là root. Hãy xem xétsudo dtruss -f -t open sudo -u $USER python myfile.py
một mọt sách được trả tiền vào

7
$ sudo dtruss -f -t open sudo -u $USER pythonGặp lỗi với : `dtrace: bảo vệ tính toàn vẹn của hệ thống được bật, một số tính năng sẽ không khả dụng 'và sau đódtrace: failed to execute sudo: dtrace cannot control executables signed with restricted entitlements
tô màu vào
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.