¿Evitar que strace abrevíe argumentos?

117

Estoy tratando de usar strace para averiguar qué comandos ejecuta un programa execve. Algunos de los argumentos en estos comandos son bastante largos, y strace abrevia los argumentos a execve(veo "..." después de unos 30 caracteres), lo que me impide obtener información útil. ¿Cómo puedo obtener el texto completo de cada argumento?

He leído la página del manual . La opción -v imprime el entorno, lo cual es útil, pero los argumentos aún están truncados.

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

También intenté pasar verbose = all, pero esto solo brinda información adicional sobre SIGCHLD.

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

Respuestas:

162

Desea la opción, que especifica la longitud máxima de una cadena para mostrar (el valor predeterminado es 32).-v -s strsize

Matthew Slattery
fuente
14
Esto no funciona para argumentos "anidados" o de matriz, por ejemploioctl(3, SNDCTL_TMR_TEMPO or TCGETA, {B9600 -opost -isig -icanon -echo ...})
Marki555
8
se resolvió en stackoverflow.com/questions/34365928/…
Vladimir Kunschikov
2
Como otro usuario señaló en un comentario aquí, "el argumento -v funciona a partir de 4.15 y parece haber estado allí desde el momento de la creación del repositorio de Git". Por lo tanto, no tiene que alterar la fuente del paquete, -v debería funcionar bien con objetos anidados.
DarkFranX