0

我想在一个文件中获取多个 strace 调用的输出,
但我不知道如何。

目前我正在使用:
strace -o tmpfile,但这只是将一个文件的输出放入,然后用新输出覆盖该文件。

有谁知道,如何做到这一点?我希望这不是愚蠢的问题。

提前致谢。

4

4 回答 4

2

在 bash shell 下使用以下命令

strace -o >(cat >>outputfile) command [args] ...

这将向 -o 标志传递一个看起来像文件的参数,但将是一个文件描述符到标准输入

cat >>outputfile

过程。此过程会将其输入附加到指定的输出文件。

于 2013-05-03T14:46:56.477 回答
0

Instead of strace -o somefile command, can you just do strace command >> somefile? Alternatively, assuming a similar version of strace, my manual for strace indicates this should work: strace -o "|tail -a somefile" command (the -o "|command" functionality is implemented by strace itself, not by the shell).

于 2013-05-03T16:15:01.947 回答
0

strace 输出在 stderr 上,strace 2>> outfile对我有用。如果您将 strace 作为单个命令调用,则必须像这样调用它:adb -e shell "strace -p pid 2>> file"

于 2013-11-04T14:13:35.930 回答
0

我无法通过调用本身(在 Android Shell 中)来做到这一点。
我只是通读所有文件并将它们写入一个日志文件。
该解决方案减慢了整个过程,但这是我找到的唯一解决方案。

于 2013-05-13T18:01:51.603 回答