如何查看Linux进程的进程详细信息?

 2024-02-28 05:03:56  阅读 0

1.什么是PS?

要监视和控制一个进程,首先要了解当前进程的情况,即需要查看当前进程。 ps命令是最基本的进程查看命令。 使用这个命令可以判断哪些进程正在运行以及它们的运行状态,进程是否已经结束,进程中是否有僵尸进程,哪些进程占用资源过多等等,总之大部分信息都可以通过执行这个来获取命令。

ps显示的是瞬时过程的状态,不是动态的、连续的; 如果你想实时监控进程,你应该使用top命令。

基本参数:

输出格式规划:

现在我们来实践一下命令,看看不同的参数有什么效果。

2、不加参数执行ps命令会输出什么?

这是ps的基本用法。 我们来看看在控制台中执行该命令并查看结果。

linux获取进程名称_linux 获取进程名_获取进程名称

结果默认会显示4列信息:

显示的信息未排序。

3、如何显示当前所有进程?

使用-a参数,-a代表全部。 同时添加x参数会显示不控制终端的进程。

$ ps -ax
# 这个命令的结果或许会很长。为了便于查看,可以结合less命令和管道来使用。
$ ps -ax | less

4. 如何根据流程的用户过滤信息?

在我们需要查看特定用户进程的情况下,可以使用-u参数。 例如,如果我们想查看用户''的进程,可以使用以下命令:

$ ps -u pungki

linux获取进程名称_linux 获取进程名_获取进程名称

5. 如何按cpu和内存使用情况过滤进程?

也许您想按 CPU 或内存使用情况过滤结果,以便找到哪些进程正在消耗您的资源。 为此,我们可以使用 aux 参数来显示综合信息:

$ ps -aux | less

linux获取进程名称_linux 获取进程名_获取进程名称

当结果很长时,我们可以使用管道和less命令来过滤。

默认结果集是未排序的。 可以使用 --sort 命令来完成排序。

5.1 根据CPU使用率升序排序

$ ps -aux --sort -pcpu | less

5.2 根据内存使用情况升序排序

$ ps -aux --sort -pmem | less

5.3 我们还可以将它们组合成一个命令并通过管道传输前 10 个结果:

$ ps -aux --sort -pcpu,+pmem | head -n 10

6. 如何按进程名和PID过滤?

使用 -C 参数,后跟您要查找的进程的名称。 例如,如果要显示名为 getty 的进程的信息,可以使用以下命令:

$ ps -C getty


获取进程名称_linux 获取进程名_linux获取进程名称

如果我们想查看更多详细信息,可以使用-f参数来查看格式化的信息列表:

$ ps -f -C getty

linux获取进程名称_linux 获取进程名_获取进程名称

7. 如何根据线程过滤进程?

如果我们想知道特定进程的线程,可以使用-L参数后跟特定的PID。

$ ps -L 1213

获取进程名称_linux获取进程名称_linux 获取进程名

8. 如何以树形显示流程?

有时我们想以树形结构显示进程,我们可以使用-axjf参数。

$ ps -axjf

或者您可以使用其他命令。

$ pstree

linux获取进程名称_linux 获取进程名_获取进程名称

9. 如何显示防伪信息?

如果您想查看当前谁登录到您的服务器。 您可以使用带相关参数的 ps 命令:

$ ps -eo pid,user,args

参数 -e 显示所有进程信息,-o 参数控制输出。Pid,UserArgs参数显示PID,运行应用的用户该应用

linux获取进程名称_linux 获取进程名_获取进程名称

可以与 -e 参数一起使用的关键字有 args、cmd、comm、、fname、ucmd、ucomm、和 start。

10. 如何格式化 root 用户创建的进程的输出(真实或有效的 UID)?

当系统管理员想要查看root用户运行的进程以及该进程的其他相关信息时,可以使用以下命令:

$ ps -U root -u root u

-U 参数按真实用户 ID (RUID) 过滤进程,RUID 从用户列表中选择真实用户名或 ID。 真正的用户是实际创建进程的用户。

-u参数用于过滤有效用户ID(EUID)。

最后一个 u 参数用于确定用户的输出格式,由 User、PID、%CPU、%MEM、VSZ、RSS、TTY、STAT、START、TIME 和这些列组成。

以下是上述命令的输出:

linux获取进程名称_获取进程名称_linux 获取进程名

11.如何使用PS实时监控进程状态?

ps 命令将显示系统当前的进程状态,但结果是静态的。

当存在上面第 4 点提到的需要按 CPU 和内存使用情况过滤进程的情况,并且我们希望结果每秒刷新一次时。 为此,我们可以将 ps 命令与 watch 命令结合起来。

$ watch -n 1 ‘ps -aux --sort -pmem, -pcpu’


如果输出太长,我们也可以对其进行限制,比如前20条,我们可以使用head命令来做到这一点。

$ watch -n 1 ‘ps -aux --sort -pmem, -pcpu | head 20

这里的动态查看和top或者htop命令不一样。 但使用ps的好处是可以定义要显示的字段,并且可以选择想要查看的字段。

例如,如果您只需要查看名为“”的用户的信息,则可以使用以下命令:

$ watch -n 1 ‘ps -aux -U pungki u --sort -pmem, -pcpu | head 20

12.最后

您可以每天使用 ps 命令来监控您的 Linux 系统。 但实际上,你可以通过ps命令的参数生成你需要的各种报告。

ps命令的另一个优点是,各种Linux系统上都默认安装了ps,因此您只需使用它即可。 不要忘记通过 man ps 检查更多参数。

- End -

本公众号全部博文已整理成一个目录,请在公众号后台回复「m」获取!

推荐阅读:
1、B 站收藏 10W+,GitHub 标星 6K+,肝了这门计算机速成课!
2、学生党学编程,有这个开源项目就够了!
3、太赞了!程序员应该访问的最佳网站都在这里了!
4、一款基于 Python 语言的 Linux 资源监视器!
5、利用 Python 爬取了 13966 条运维招聘信息,我得出了哪些结论?
6、超详细!一文带你了解 LVS 负载均衡集群!

好文和朋友一起看~

如本站内容信息有侵犯到您的权益请联系我们删除,谢谢!!


Copyright © 2020 All Rights Reserved 京ICP5741267-1号 统计代码