Python实现过滤单个Android程序日志脚本分享
在Android软件开发中,增加日志的作用很重要,便于我们了解程序的执行情况和数据。Eclipse开发工具会提供了可视化的工具,但是还是感觉终端效率会高一些,于是自己写了一个python的脚本来通过包名来过滤某一程序的日志。
原理
通过包名得到对应的进程ID(可能多个),然后使用adblogcat过滤进程ID即可得到对应程序的日志。
源码
#!/usr/bin/envpython #coding:utf-8 #Thisscriptisaimedtogreplogsbyapplication(UsershouldinputapackageNameandthenwelookupfortheprocessidsthenseparatelogsbyprocessids).
importos importsys
packageName=str(sys.argv[1])
command="adbshellps|grep%s|awk'{print$2}'"%(packageName) p=os.popen(command) ##forsomeapplications,therearemultipleprocesses,soweshouldgetalltheprocessid pid=p.readline().strip() filters=pid while(pid!=""): pid=p.readline().strip() if(pid!=''): filters=filters+ "|"+pid #print'command=%s;filters=%s'%(command,filters) if(filters!=''): cmd='adblogcat|grep--color=always-E"%s"'%(filters) os.system(cmd)