Android杀死进程在shell脚本中仅使用PS和GREP

时间:2013-12-02 05:50:03

标签: android linux awk kill ps

我真的需要帮助...... 我正在编写一个shell脚本,它会启动一个进程,然后每隔10秒就会终止一次,然后重新启动它。

我知道使用'ps'命令会显示正在运行的所有进程,你可以通过运行'kill [pid]'来杀死它。 但是,轻击我正在启动的进程的PID并不容易。

我到处寻找,出于某种原因,我不能使用像pgrep,awk,xargs,pidof这样的函数......它们只是找不到...

我只能想到一种方法,我必须输出ps文件然后解析它并单独获取PID ..但这似乎太多了......

任何人都可以帮助我吗?我想我只限于使用ps和grep ......

我正在通过运行启动手机应用程序     我开始-a android.intent.action.CALL -d tel:XXX-XXX-XXXX 然后通过运行'ps m.android.phone'我可以使用kill [PID]来停止呼叫

我也尝试过运行命令     pm clear com.android.phone,     adb shell am force-stop com.android.phone 但他们都没有阻止这个电话......

请帮忙 非常感谢!

4 个答案:

答案 0 :(得分:2)

使用

am kill package-name

am force-stop package-name

将package-name替换为您要杀死的应用程序的名称。

答案 1 :(得分:1)

如果你知道应用程序的进程名称,那么我将一个非常快速和脏的脚本包装在一起来解析进程的PID:

ps -u $(whoami) | grep firefox | awk '{printf $1}'

您显然应将 firefox 替换为您选择的进程名称。

请注意,我不是该领域的专家,但它可以在我的最后工作。

答案 2 :(得分:0)

您可以尝试命令pidof直接获取进程ID,eks:

pidof apashe2

答案 3 :(得分:0)

跟随马库斯说:

adb shell kill -9 $(adb shell ps | grep firefox | awk '{print $1}')