进程是什么?
程序运行在操作系统中,被操作系统管理,为了方便管理,每个程序在运行时,会被注册为系统中的一个进程,并为每个进程分配一个独有的ID,叫做:进程id(进程号、pid)。
通过ps命令查看系统中的进程信息,语法:
ps [-e -f]
选项-e:显示出全部的进程
选项-f:以完全格式化的形式展示信息(展示全部信息)
一般来说,列出全部进程的全部信息,固定语法是:
ps -ef
可得到如下图信息
UID:进程所属的用户ID
PID:进程的进程号
PPID:进程的父ID(启动此进程的其它进程)
C:进程占用CPU的百分比
STIME:进程的启动时间
TTY:启动此进程的终端序号,如果是问号,表明并不是终端启动的,而是系统内置启动的
TIME:进程占用CPU的累计时间,并不是指运行了多久,而是累计占用了CPU多长时间,单位是秒
CMD:进程对应的名称或启动路径或启动命令
进程这么多,怎样找想要查看的进程信息呢?
可以使用管道符grep进行过滤,语法:
ps -ef | grep 匹配信息
比如:ps -ef | grep tail,可以准确找出tail进程信息
一般用ps命令进行grep时,最少出现两个结果,除非没有结果
第一个指运行的程序
第二个表示刚执行的ps -ef | grep这条命令本身
grep命令可以过滤任意关键字,比如:
过滤进程名称:ps -ef | grep nginx
过滤启动时间:ps -ef | grep "10:00"(有特殊字符,用引号包围)
过滤进程id:ps -ef | grep 1016(过滤带有1016关键字的进程信息,一般指代过滤1016进程号,不仅能过滤自己,还能过滤以它为父进程所启动的子进程)
过滤启动用户id:ps -ef | grep www-data
关闭进程
在linux中,通过kill命令关闭进程。
语法:
kill [-9] 进程id
选项:-9,表示强制关闭进程。不使用此项会向进程发送信号要求其关闭,但是否关闭看进程自身的处理机制。
在关闭进程时,带不带-9选项的结果,可以通过下面案例加深理解。
仅使用kill命令时,程序退出时输出:Terminated,意为要停止了,语义较为柔和。
使用kill -9命令时,程序退出时输出:Killed,意为被杀死的,说明进程已立刻停止。