我真的需要帮助...... 我正在编写一个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 但他们都没有阻止这个电话......
请帮忙 非常感谢!
答案 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}')