2011-07-13 32 views
86

Tôi đang cố gắng sử dụng strace để tìm ra lệnh nào một chương trình thực hiện bằng cách sử dụng execve. Một số đối số trong các lệnh này khá dài và strace viết tắt các đối số thành execve (Tôi thấy "..." sau khoảng 30 ký tự), ngăn không cho tôi nhận bất kỳ thông tin hữu ích nào. Làm thế nào tôi có thể nhận được toàn văn của mỗi đối số?Ngăn chặn strace từ viết tắt đối số?

Tôi đã đọc man page. Tùy chọn -v in môi trường, điều này rất hữu ích, nhưng các đối số vẫn bị cắt bớt.

strace -f -e trace=execve -v -p 1234 

Tôi cũng đã cố gắng vượt qua verbose = tất cả, nhưng điều này chỉ cung cấp thêm một số thông tin về SIGCHLD.

strace -f -e verbose=all trace=execve -v -p 1234 

Trả lời

119

Bạn muốn tùy chọn -s strsize, chỉ định độ dài tối đa của chuỗi hiển thị (mặc định là 32).

+8

Điều này không hoạt động đối với các đối số "lồng nhau" hoặc mảng, ví dụ: 'ioctl (3, SNDCTL_TMR_TEMPO hoặc TCGETA, {B9600 -opost -isig -icanon -echo ...})' – Marki555

+5

nó đã được giải quyết tại http://stackoverflow.com/questions/34365928/show-complete-arguments-in -strace/34373478 # 34373478 –

Các vấn đề liên quan