linux查看进程的命令是什么

等等,昨晚我在宿舍编码时,我的电脑突然像石头一样死机了。
屏幕上橡胶字符闪烁,鼠标指针一动不动。
我敲打着键盘,脑子里飞速运转。
这时我想起来我已经学会了ps命令,赶紧打开一个终端,输入ps aux线。
屏幕上突然布满了小字。
当我盯着它时,死亡的 nginx 进程 ID 为 1 2 3 4 5 我深吸了一口气,再次输入kill-9 1 2 3 4 5 终端发出一声崩溃声,电脑突然恢复了活力。
这时我才意识到,有时候问题就隐藏在那些冰冷的数字里。
我突然想,是不是在nginx进程关闭之前数据库就重新启动了?

linux查看系统进程

嘿嘿,这个PS命令确实是老生常谈了,但是每次使用总会遇到新的东西。
记得一年前,我正在鼓捣在北京服务器上搭建一个网站。
CPU 突然飙升到 9 0%,客户都疯了。
我打开终端并输入 ps aux --sort=-%cpu。
突然,消耗 CPU 最多的进程出现了。
原来某个 PHP 脚本已经变得疯狂了。
如果那时没有 -aux,我们就必须找到每一个,这将需要到今年年底。

还有一次,在杭州的机房里,系统突然挂了。
我远程登录并想检查进程的状态,因此我输入了 ps -efH。
树形的结构让我震惊了。
进步的一代人已经明确了谁是祖先,谁是孙子。
特别是当我看到僵尸进程挂在那里并且没有找到 PPID 时,我很快使用kill -9 杀死它,系统立即启动并运行。

但是,这个命令有时很烦人。
例如,我曾经安装过一个新系统,而且是新的。
我想查看所有进程在哪里运行,因此我输入了 ps -eA。
结果终端直接炸了,仿佛屏幕被刷新了一样,屏幕上铺满了数千条进程信息。
我吓得赶紧按Ctrl+C停止。
后来我发现这个参数太强了,我不得不添加 -f 来掌握它的窍门。
所以你看,如果你没有很好地使用这个命令,它真的会给你带来麻烦。

最近,我在南京帮朋友搭建服务器。
他问我为什么有时 ps aux 看到的进程与 ps -ef 看到的进程不同。
我说,如果选择不同的参数,渲染过程肯定会不一样。
aux 是针对所有用户的,ef 默认只显示当前用户的信息。
他拍着大腿说,之前他已经删除了一半的文件,系统就卡住了。
他认为这是某种病毒。
但事实证明我无法使用 ps -ef 观看该进程,并最终发现后台任务卡在那里。

所以你看,这个ps命令如果你使用得流畅的话是非常重要的,但是如果使用不当的话,它真的会让你很头疼。
只要练习一下参数就可以了。
也许有一天你能够用它解决大问题。

linux查看所有运行的进程

你问Linux如何知道正在运行的进程,对吗?以下是我用来解决此问题的一些简单方法。

我们来谈谈顶部。
这是最直观的。
在终端上按“top”,然后按“Enter”即可查看动态更新的列表。
一目了然,您可以看到哪些进程使用更多的 CPU,哪些进程使用更多的内存。
按 h 获取帮助,按 q 退出。
特别适合实时监控。

然后,ps,我们有这个旧命令:如果您想查看所有进程,只需按 ps -A 或 ps -e,进程就会弹出在屏幕上。
这个命令可以解决这个问题。
例如,ps aux可以显示更详细的信息,ps -ef可以显示所有内容,包括根进程。

pstree也很有趣。
不会显示长列表,但会绘制树状图。
哪些进程是父进程,哪些进程是子进程,一目了然。
这对于找出启动许多子进程的原因特别有用。
只需输入“pstree”。

我现在用得最多的是htop。
感觉比top好多了,界面美观,交互方便。
您还可以直接单击进程名称来终止进程或按字母顺序排序。
必须首先使用 sudo apt install htop(Debian/Ubuntu 系统)等命令进行安装。
安装后,输入“htop”。
操作和top类似,但是体验要好很多。

最后我们来谈谈/proc文件系统。
Linux自己的虚拟文件系统。
理论上,/proc目录下会有多个目录,每个数字就是一个进程ID。
例如,目录/proc/1 2 3 4 包含与进程1 2 3 4 相关的文件。
您可以打开/proc/1 2 3 4 /comm查看进程名称,打开/proc/1 2 3 4 /status查看详细状态。
但说实话,直接用这种方法查看所有进程还是太繁琐了。
通常没有人这样做,除非他们想查看特定流程的基础信息。

这些方法中,top、ps、htop是最容易使用的。
htop最方便,ps最经典,top最简单。
pstree 适合查看层次关系,/proc 适合查看深度。
您可以根据您的需要进行选择。