先进入adb shell,再执行脚本

解决方案 »

  1.   


    不行额,提示如下:C:\Documents and Settings\Administrator>adb shell
    * daemon not running. starting it now on port 5037 *
    * daemon started successfully *
    root@N3:/ # ps -fe|gerp uiautomator|awk '{print $2}'|head -n 1
    ps -fe|gerp uiautomator|awk '{print $2}'|head -n 1
    /system/bin/sh: awk: not found
    /system/bin/sh: head: not found
    /system/bin/sh: gerp: not found
      

  2.   

    直接   adb shell "am force-stop+要杀进程的包名" 不需要进程ID
      

  3.   


    这种方法不行,只能用来结束应用程序,比如QQ:adb shell "am force-stop com.tencent.mobileqq"。但对于一些没有只有进程名,没有包名的进程,无法结束。比如uiautomator:adb shell "am force-stop uiautomator"
      

  4.   

    adb shell "pid=`ps | grep monkey | awk '{print $2}'` && kill $pid"
      

  5.   

    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 操作无极限 
      

  6.   


    谢谢你哈!帮我找了这么多
    我现在的使用环境是电脑通过adb连接手机,在adb shell下,使用上面的命令不行,都提示not found,可能是adb shell的命令格式和linux不一样,我再试试,谢谢哈
      

  7.   

    grep是linux下的命令,android平时不是以shell为主,当然类似awk,grep这样的东西不包含很正常
      

  8.   


    我想在PC端通过adb连接手机,通过adb shell实现上面的功能,有办法吗?大神救救我吧