Linux ps命令概述
ps命令(process status)是Linux系统中用于显示当前进程状态的工具。它能够提供关于系统中运行进程的详细信息,类似于Windows的任务管理器¹。

基本用法
ps命令的基本格式如下:
ps [options]
其中options
可以是多种不同的参数组合,用于控制ps命令的输出内容和格式。
常用参数
-
-A
或-e
: 显示所有进程。 -
a
: 显示与当前终端相关的所有进程。 -
u
: 用户友好视图。 -
x
: 显示没有控制终端的进程。 -
aux
: 显示所有进程的详细信息。 -
-l
或l
: 长格式显示更多信息。 -
f
: 显示进程间的层级关系。
输出信息含义
-
USER
: 进程的所有者。 -
PID
: 进程的ID。 -
%CPU
: 进程占用的CPU百分比。 -
%MEM
: 进程占用的内存百分比。 -
VSZ
: 进程占用的虚拟内存大小。 -
RSS
: 进程占用的物理内存大小。 -
TTY
: 进程运行的终端。 -
STAT
: 进程的状态。 -
START
: 进程的启动时间。 -
TIME
: 进程占用CPU的运算时间。 -
COMMAND
: 产生此进程的命令名。
示例
查看系统中所有的进程:
ps aux

查看特定用户的进程:
ps -u 用户名

按CPU占用率排序:
ps -eo pid,ppid,c,stime,tty,time,cmd --sort=-%cpu

查看进程树:
pstree

Linux ps命令高级用法
进程排序
ps命令允许用户根据不同的标准对进程进行排序。例如,您可以根据CPU或内存使用率来排序进程。
按内存使用率降序排序:
ps -eo pid,ppid,c,stime,tty,time,cmd --sort=-%mem

实时监控进程
如果您想要实时监控特定进程的状态变化,可以使用top
或htop
命令。这些命令提供动态的进程监控界面,可以显示进程的实时状态。以下是如何使用top
命令的示例:
top

Linux ps命令的高级技巧
结合grep命令
grep
命令是一个强大的文本搜索工具,可以用来过滤ps命令的输出,以找到特定的进程。例如,要查找所有与ssh
相关的进程,可以使用以下命令:
ps aux | grep ssh

使用sort命令排序
您可以使用sort
命令对ps的输出进行排序。例如,按照CPU使用率排序:
ps aux --sort=-%cpu

实时监控进程
虽然ps命令提供了一次性的进程快照,但有时您可能需要实时监控进程。这时,您可以使用top
或htop
命令来实现动态监控。
自定义输出格式
ps命令允许您自定义输出格式,这样您可以只显示您感兴趣的信息。例如,以下命令只显示进程ID、用户、CPU和内存使用率:
ps -eo pid,user,%cpu,%mem

查找进程ID
如果您只需要知道特定进程的ID,可以使用pgrep
命令。例如,查找所有sshd
进程的ID:
pgrep sshd

原文始发于微信公众号(运维漫谈):Linux ps命令,使用的好,效率爆棚!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/220222.html