adb: Find PID from the adb shell
adb, android, bash, linux, shell
Solution
Not sure if you can get the PID directly however you can try the following
set `ps |grep android.process.acore`
echo $2
This has the affect of setting the output of the ps command into variables $1, $2, $3 etc. The PID value is in $2
Problem
I am trying to get the PID of the process INSIDE adb shell. So, I am doing adb shell which gets me to the android shell. Now, if I were to get the PID using a regular shell I would use ``` adb shell ps | grep android.process.acore | sed 's/\s\s*/ /g' | cut -d ' ' -f 2 ``` OR ``` adb shell ps | grep android.process.acore | awk '{ print $2 }' ``` I get the PID (a numeric number - 2nd field of the `ps | grep android.process.acore`) output. However, if I run the above commands inside android shell(after doing `adb shell`), I get `/system/bin/sh: sed: not found` and `/system/bin/sh: awk: not found` errors respectively. Which means, these commands are not available inside adb shell. However, grep works. The output of the `ps | grep android.process.acore` inside `adb shell` is: ``` XXX_x21 11826 441 502296 39028 ffffffff 4010ff6c S android.process.acore ``` I am looking for the number 11826. How can I extract it inside `adb shell`? Also, please help if there is a direct way to get the PID inside the adb shell. Regards, Rumit