2013-05-03 34 views
0

我想在一個文件中獲得多個strace調用的輸出,
但我不知道如何。在一個文件中獲取多個strace調用的輸出

目前我正在使用:
strace -o tmpfile,但這只是放入一個文件的輸出,然後用新輸出覆蓋文件。

有沒有人有一個想法,如何做到這一點? 我希望這不是愚蠢的問題。

在此先感謝。

回答

0

我無法通過調用本身來執行此操作(在Android Shell中)。
我剛剛讀完所有文件並將它們寫入一個日誌文件。
該解決方案減緩了整個過程,但卻是我找到的唯一解決方案。

1

在bash外殼使用下面的命令

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

這將傳遞給-o標誌將出現類似的文件的參數,但將是代替一個文件描述符到

的標準輸入
cat >>outputfile 

過程。這個過程將把它的輸入附加到指定的輸出文件。

+0

我忘了提及我在我的android手機上使用這個,所以我不能用這種方式使用貓。也許另一個想法如何實現這一點?謝謝。 – Naturjoghurt 2013-05-03 15:04:53

0

而不是strace -o somefile command,你可以只做strace command >> somefile?或者,假設strace的類似版本,我的strace手冊指出這應該起作用:strace -o "|tail -a somefile" command-o "|command"功能由strace本身實現,而不是由shell實現)。

+0

第一個soultion(帶>>)不起作用,因爲>>無法識別。第二個版本提供了一個名爲「| tail -a somefile」的文件,其中只包含最後一個strace調用。 – Naturjoghurt 2013-05-05 09:21:16

0

strace輸出在stderr上,strace 2>> outfile爲我做了詭計。如果你調用strace作爲單個命令,你必須這樣稱呼它:adb -e shell "strace -p pid 2>> file"

相關問題