因为根据TAG过滤很容易很多log 被滤掉,根据PID过滤,基本一个AP开发所有的log 都会显示出来,包括native层,
相当于eclipse 底下的自动过滤,但eclipse 的log 不好复制,也容易被刷掉不见..囧rz
这个脚本就是自己实现的logcat 根据PID来过滤,使用时,只要./logcat.sh pid_name <==这个PID name也不用选全称.
如果不确定自己的PID name, 可以adb shell ps 看看就知道了.
如果同时adb 着多台设备, 那./logcat.sh pid_name device_name 加上这第二个参数即可. device_name 查看adb devices
#!/bin/bash
packageName=$1
devicesName=$2
pid=""
if [[ $devicesName = "" ]];
then
while [[ $pid = "" ]]
do
pid=`adb shell ps | grep $packageName | awk '{print $2}'`
sleep 1
done
echo "logcat start:"
adb shell logcat -v time | grep -v RRF | grep --color=auto $pid\)
else
while [[ $pid = "" ]]
do
pid=`adb -s $devicesName shell ps | grep $packageName | awk '{print $2}'`
sleep 1
done
echo "logcat start:"
adb -s $devicesName shell logcat | grep -v RRF | grep --color=auto $pid\)
fi