1、查进程
有些平台会对有些参数不支持,这点请注意:比如有的平台支持ps -A, 有的平台不支持,但是ps -x是支持的,比如我当时使用的一个板子是aml T962E Android7.1的板子就出现过这情况。
ps 命令查找与进程相关的PID号:
ps a 显示现行终端机下的所有程序,包括其他用户的程序。
ps -A 显示所有程序。
ps c 列出程序时,显示每个程序真正的指令名称,而不包含路径,参数或常驻服务的标示。
ps -e 此参数的效果和指定"A"参数相同。
ps e 列出程序时,显示每个程序所使用的环境变量。
ps f 用ASCII字符显示树状结构,表达程序间的相互关系。
ps -H 显示树状结构,表示程序间的相互关系。
ps -N 显示所有的程序,除了执行ps指令终端机下的程序之外。
ps s 采用程序信号的格式显示程序状况。
ps S 列出程序时,包括已中断的子程序资料。
ps -t<终端机编号> 指定终端机编号,并列出属于该终端机的程序的状况。
ps u 以用户为主的格式来显示程序状况。
ps x 显示所有程序,不以终端机来区分。
最常用的方法是ps -aux,然后再通过管道使用grep命令过滤查找特定的进程,然后再对特定的进程进行操作。
把ps的查询结果通过管道给grep查找包含特定字符串的进程。管道符“|”用来隔开两个命令,管道符左边命令的输出会作为管道符右边命令的输入。
举例说明:
比如查看是否有进程gt_misc_dev_service:
gtt92e:/ # ps -x | grep gt_misc_dev_service
root 17119 8301 3940 1020 hrtimer_na f0036860 S system/bin/gt_misc_dev_service (u:36, s:72)
2、杀进程
杀进程一般使用kill命令,kill 的用法:
kill [信号代码] 进程ID
注:信号代码可以省略;我们常用的信号代码是 -s 9 ,表示强制终止;
$ kill -s 9 pid
举例说明:
比如杀进程gt_misc_dev_service,执行以下命令(17119是进程号):
gtt92e:/ # kill -s 9 17119 //杀掉进程号是17119的进程
gtt92e:/ # ps -x | grep gt_misc_dev_service //查看运行中的进程,发现已经没有这个进程 gt_misc_dev_service
gtt92e:/ #