| #! /system/bin/sh | |
| # logpersist cat start and stop handlers | |
| data=/data/misc/logd | |
| property=persist.logd.logpersistd | |
| service=logcatd | |
| progname="${0##*/}" | |
| if [ X"${1}" = "-h" -o X"${1}" = X"--help" ]; then | |
| echo "${progname%.*}.cat - dump current ${service%d} logs" | |
| echo "${progname%.*}.start - start ${service} service" | |
| echo "${progname%.*}.stop [--clear] - stop ${service} service" | |
| exit 0 | |
| fi | |
| case ${progname} in | |
| *.cat) | |
| su 1036 ls "${data}" | | |
| tr -d '\r' | | |
| sort -ru | | |
| sed "s#^#${data}/#" | | |
| su 1036 xargs cat | |
| ;; | |
| *.start) | |
| su 0 setprop ${property} ${service} | |
| getprop ${property} | |
| sleep 1 | |
| ps -t | grep "${data##*/}.*${service%d}" | |
| ;; | |
| *.stop) | |
| su 0 stop ${service} | |
| su 0 setprop ${property} "" | |
| [ X"${1}" != X"-c" -a X"${1}" != X"--clear" ] || | |
| ( sleep 1 ; su 1036,9998 rm -rf "${data}" ) | |
| ;; | |
| *) | |
| echo "Unexpected command ${0##*/} ${@}" >&2 | |
| exit 1 | |
| esac |