2010-06-30 40 views
9

我被告知它是一个命令行选项。但是Eclipse的运行!运行配置...!目标!附加仿真器的命令行选项栏已经忙于试图将我的LogCat输出到文件

-sdcard "C:\android-sdk-windows\tools\sd9m.img" 

如果我想写类似

adb logcat -s MessageBox > "C:\Users\me\Documents\LogCatOutput.txt" 

然后我在哪里写出来,以及如何(即,语法是否正确)?我只需要输出一个过滤的标签,而不是详细的。 (“MessageBox”是我的TAG,我不知道这个标点符号是否正确,甚至不在命令行的位置。)

感谢您的帮助。

回答

13

C:\ android-sdk-windows \ tools中应该有一个adb.exe文件。您可以从DOS命令提示符处手动调用此操作:

cd C:\android-sdk-windows\tools 
adb logcat -s MessageBox > "C:\Users\me\Documents\LogCatOutput.txt" 

在这种情况下,没有必要费心使用Eclipse。

+1

该目录中创建的文件为空,为空。我运行我的Android应用程序之前和之后。我不知道该怎么办。 – user225626 2010-06-30 23:10:30

+0

如果省略最后一部分(>“C:\ Users \ me \ Documents \ LogCatOutput.txt”),会发生什么情况。你看到什么了吗? – 2010-06-30 23:16:20

+0

看到什么地方? – user225626 2010-06-30 23:26:40

4

或者,如果您只想转储无论在logcat的缓冲区并退出本已立即(对脚本很有用),你可以指定-d选项:

$ adb logcat -d -s MessageBox > dump_file.txt 

确保“-D”是'logcat'后。

+0

您不必这样做。该选项使logcatdump成为日志并退出。当你想转储已经记录的内容时,它会很有用,但不会让你继续转储到文件。 – Shane 2012-09-30 19:07:30

0

上述答案的另一个有用的补充是过滤。我正在处理的应用程序会生成大量日志记录,因此使用筛选器进行日志记录会很有用。

adb -s MyDevice logcat | find /V ": T#" > d:\temp\logcat.txt 

或OSX/Linux的

adb -s MyDevice logcat | grep -v ": T#" > ~/logcat.txt 

这将开写所有的logcat活动从包含任何行 “:T#”

find或也可使用的grep过滤器的基础取得积极成果。然后我使用BareTail之类的软件来显示日益增长的日志文件。

相关问题