一.Linux的进程基本概述:
Windows在任务管理器查看进程
Linux中分为两种:
前台进程:对我们屏幕进行占用(输入top查看)
后台进程:用户看不到的,系统后台运行,一般在系统关机重启时结束(输入ps查看)

二.进程相关指令
1. 进程的应用实例

(1)两个关键字
grep=筛选过滤,more=分页翻页
(2)查看全部进程信息
ps -ef 以全格式查看所有进程信息
-e 显示所有进程
-f 全格式显示
(3)查看指定进程信息
ps -ef | grep 进程名
比如:ps -ef | grep sshd
(4)以sshd进程的为例子的解析

也就是说sshd进程的进程id是1328.其父进程id是1。1928的进程的父进程是进程id为1328的进程
那么id为1的进程是什么样的呢,我们可以使用
ps -ef | more的命令查看

2. 终止进程
若是某个进程执行一半需要停止时候,或是已经消耗了很大的系统资源时候,可以考虑停止该线程。
(1)基本语法:
kill 选项 进程号 :通过进程号杀死/终止进程。
killall:会杀死当前进程和其子进程
(2)强制删除:
-9 表示强迫进程立即停止
(3)需求强制让登陆用户kobe下线操作
我们首先在xshell终端使用kobe登陆。然后在另外一个终端使用root用户登录,并在root用户下面执行
指令:ps -aux | grep sshd。
此时我们发现kobe用户的进程id是6940.我们在root用户下面使用kill命令来终止这个进程。

指令 kill 6940
回到Xshell,我们发现kobe这个用户已经被注销了
(4)终止远程登录服务sshd
不允许远程登录。然后重启sshd服务,允许远程登录

终止指令 kill 1328
(5)重启远程登录服务sshd
我们使用Xshell远程登录,发现不起作用了。此时我们可以使用/bin/systemctl start sshd.service重启
注意:当我们的Xshell远程登陆不上,但是在Linux中可以登录,首先考虑通过
指令/bin/systemctl start sshd.service
重启sshd服务,这样就可以再次远程登录了

(6)终止多个gedit,演示killall(记事本打开文件的进程为例子)
killall 进程名
我们在linux图形化界面里面打开多个记事本。然后在Xshell里面使用killall 命令: killall gedit
(7)强制杀掉一个终端(-9的应用)
比如我们在linux图形化界面里面开启两个终端
通过指令ps -aux | grep bash 查看终端信息

如图,我们可以看到两个bash(7946 7860)
比如我们现在想杀死id为7946的进程,我们使用kill 7946。发现没有任何反应,因为linux认为这个命令
终端是正常运行的,不允许我们杀掉。此时我们需要加上-9参数来强制杀掉
kill -9 7946 可以强制杀掉另一个命令终端
三.进程树指令
1. 查看进程树指令
pstree 选项
(1)选项
通过-p -u可以更加直观的来查看进程信息
-p:显示进程的PID。
-u:显示进程的所属用户。
(2)案例1:以树状的形式显示进程的pid
pstree # 显示进程树
pstree -p # 显示进程树(携带进程号)
(3)案例2:以树状的形式展示进程的用户信息
pstree -u
