Linux - 进程管理
进程是程序的一次动态执行
守护进程是在后台运行并提供系统服务的一些进程
当一个进程创建另一个进程时,创建新进程的进程称为新进程的父进程,新进程称为子进程
ps:查看当前进程的信息
该终端为 bash 进程,ps 命令为 ps 进程
一个终端为一个 bash 进程,一条命令为一个进程
ps aux:查看所有的进程
[root@sch01ar ~]# ps aux
USER 为用户,PID 为 pid 进程号,%CPU 为进程占用 cpu 的百分比,%MEM 为进程占用内存的百分比,COMMAND 为进程名
查看前两行的信息
[root@sch01ar ~]# ps aux | head -2
过滤进程
[root@sch01ar ~]# ps aux | grep 'bash'
显示进程名带有 bash 的进程
grep -v 'bash' 为不显示进程名中带有 bash 的进程
结束进程
[root@sch01ar ~]# kill 18934
强制结束进程
[root@sch01ar ~]# kill -9 18934
-9 为强制杀死
也可以用 pkill 命令杀死进程
[root@sch01ar ~]# pkill -9 firefox
该命令将杀死所有的 firefox 进程
用终端命令开启 firefox
[root@sch01ar ~]# firefox
firefox 就为该终端的子进程
此时该终端不能执行命令
关掉终端或按 Ctrl+c 就会关掉 firefox
[root@sch01ar ~]# firefox &
该命令会使 firefox 转到后台运行,关掉终端也会关掉 firefox
这时的终端可以执行其他命令
1 为工作号,19850 为 PID 进程号
jobs 查看后台运行的程序
fg %工作号,把后台运行的程序转向前台
此时的终端又不能输命令了
bg %工作号,后台暂停程序的运行
也可以通过工作号来杀死进程
pstree 查看进程树