使用adb shell直接kill进程

Android 码拜 8年前 (2016-02-02) 4148次浏览
本人想用一个.bat脚本,在电脑端通过ADB连接手机,直接杀掉uiautomator进程。需要2个步骤,如下:
C:\Documents and Settings\Administrator>adb shell ps grep uiautomator
USER     PID   PPID  VSIZE  RSS     WCHAN    PC         NAME
root      18962 388   823800 24088 ffffffff 400dca64 S uiautomator
C:\Documents and Settings\Administrator>adb shell kill 18962
现在的问题是,第一步要查出pid,第二步根据pid杀掉进程。怎么合成一条命令。或用.bat脚本执行时,能够自动把第一步的pid传给第二步?
本人尝试用这个命令:
#!/bin/bash
PROID=`adb shell ps -fe|grep uiautomator|awk “”{print $2}”” | head -n 1`
adb shell kill -9 $PROID
运行时,会提示grep命令不是内部命令。是不是adb shell 的命令书写格式支持?请高手帮帮本人
解决方案:5分
先进入adb shell,再执行脚本
解决方案:20分
adb shell “pid=`ps | grep monkey | awk “”{print $2}””` && kill $pid”
解决方案:10分
http://blog.csdn.net/zhaoyue007101/article/details/7699259
根据进程名杀死进程 -kill进程名   .
分类: vim&shell  2012-06-28 14:17 3059人阅读 评论(1) 收藏 举报
killlinux
前两天一个老师给本人出了一个linux操作上的问题,现在知道进程名怎么杀死这个进程。或许很多人都会和本人一样说用
#pkill 进程名
或是
#killall 进程名
的确这个两个命令都能做到这些,而且我们平时一般知道进程名需要杀死进程的时候也都是用的这两个命令。可是他叫本人用kill 命令来完成这个一操作。我们知道kill 要杀死进程是需要知道进程的id的即进程号,其实这个思路就是需要通过其他命令获取相应进程的进程号,然后用kill 杀掉。
这里提供两个方法:
1、#kill -9 $(ps -ef|grep 进程名关键字|gawk “”$0 !~/grep/ {print $2}”” |tr -s “”\n”” “” “”)这个是利用管道和替换将 进程名对应的进程号提出来作为kill的参数。
很显然上面的方法能完成但是过于复杂,下面这种就显得简单的多了
2、#kill -9 $(pidof 进程名关键字)
总结:linux 操作无极限
解决方案:5分
grep是linux下的命令,android平时不是以shell为主,当然相似awk,grep这样的东西不包含很正常

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明使用adb shell直接kill进程
喜欢 (0)
[1034331897@qq.com]
分享 (0)