Linux ps命令详解
命令截图简单用法常用选项输出列的含义ps auxps -ef 用法实例
ps
是一个在 Unix 和 Linux 系统中常用的命令,用于查看当前运行的进程的状态。
命令截图
简单用法
* `ps aux`:显示所有进程的详细状态。* `ps -ef` 或 `ps -fe`:显示所有进程的完整格式。
常用选项
-e
:显示所有进程。-f
:全格式显示。-l
:长格式显示。-a
:显示终端上的所有进程,包括其他用户的进程。-u
:显示进程的详细状态。-x
:显示没有控制终端的进程。-T
:显示当前线程的层次结构。-o
:自定义输出格式,其中 <format>
可以是如下的格式选项之一或组合:%cpu、%mem、%tty、%time、%cmd等。例如,ps -o pid,tty,cmd
将只显示进程ID、终端类型和执行的命令行。--sort
:按指定的字段对输出进行排序。head
:仅显示输出中的前N行,其中N是用户指定的数字。 输出列的含义
ps aux
USER: 进程的拥有者。这通常是运行该进程的用户帐户的名称。PID: 进程ID。每个进程都有一个唯一的ID,用于标识该进程。%CPU: 该进程占用的CPU使用率百分比。%MEM: 该进程占用的物理内存使用率百分比。VSZ: 虚拟内存大小,单位是KB。这表示进程使用的虚拟内存量。RSS: 常驻集大小,单位是KB。这表示进程在物理内存中占用的固定大小。TTY: 终端类型。如果进程没有与任何终端关联,则显示为"?"。STAT: 进程状态。这描述了进程的当前状态,例如运行中、休眠等。START: 进程启动的时间。TIME: 该进程实际使用CPU的时间,单位是小时:分钟:秒。COMMAND: 启动进程的命令名称或命令行。ps -ef
UID:用户ID,表示运行该进程的用户。PID:进程ID,每个进程都有一个唯一的ID。PPID:父进程ID,表示创建该进程的父进程的ID。C:CPU使用率,表示该进程占用的CPU百分比。STIME:进程启动的时间。TTY:终端类型,如果进程与某个终端关联,则显示该终端的名称;否则显示"?"。TIME:该进程实际使用CPU的时间,通常以分钟或小时为单位。CMD:启动进程的命令名称或命令行。用法实例
显示所有进程:
ps
:默认情况下,ps
命令将显示当前用户的进程。ps -e
:显示所有进程。ps -A
:显示所有进程,与ps -e
相同。ps -a
:显示终端上的所有进程,包括其他用户的进程。 按进程状态筛选:
ps aux
:显示所有进程的详细状态。ps -ef | grep <pattern>
:使用grep
命令过滤特定模式的进程。 按CPU或内存使用筛选:
ps aux --sort=-%cpu
:按CPU使用率降序显示进程。ps aux --sort=-%mem
:按内存使用率降序显示进程。 显示特定用户的进程:
ps -u <username>
:显示指定用户的进程。 显示命令行参数:
ps -o args=
:显示完整的命令行参数。 显示线程信息:
ps -T
:显示当前线程的层次结构。 其他选项:
ps -o pid,tty,cmd
:自定义输出格式,只显示进程ID、终端类型和执行的命令行。ps -p <pid>
:显示指定进程ID的详细信息。ps -f
:全格式显示进程信息。ps -l
:长格式显示进程信息。 查看更详细的状态信息:
ps -o stat,tid,comm,lwp,pri,ni,stime,etime,cpu,rss,pcpu,pmem,args --sort=-tid --sort=-pcpu
这条命令提供了关于进程的详细状态信息,包括线程ID、命令名称、本地和远程信号时间、CPU和内存使用情况等。 组合使用:可以通过组合不同的选项和参数来定制ps
命令的输出,以满足特定的需求。例如,ps aux --sort=-%cpu | head
命令将按CPU使用率降序显示进程,并只显示前10个结果。查看特定用户的进程:如果你想查看特定用户的所有进程,可以使用以下命令: ps -u <用户名>
,例如 ps -u root
。如果你还想查看该用户所运行的所有子进程,可以使用 ps -e -o user,pid,cmd | grep <用户名>
命令。例如,要查找所有以"root"用户运行的进程,你可以输入 ps -e -o user,pid,cmd | grep root
。这将列出所有由root用户启动的进程及其命令行。查看特定进程:如果你想查看特定进程的详细信息,可以使用 ps -p <pid>
命令,其中 <pid>
是你要查找的进程的ID号。例如,要查找PID为1234的进程,你可以输入 ps -p 1234
。这会显示出该进程的详细信息,包括它的状态、CPU使用率、内存使用率等。查看线程信息:如果你想查看某个进程的线程信息,可以使用 ps -T -p <pid>
命令,其中 <pid>
是你要查找的进程的ID号。例如,要查找PID为1234的进程的所有线程,你可以输入 ps -T -p 1234
。这会显示出该进程的所有线程及其相关信息。查看系统负载:如果你想查看系统的负载情况,可以使用 uptime
命令。这将显示出系统已经运行了多长时间、有多少用户在线、以及系统负载的平均值等信息。如果你还想查看更详细的系统负载信息,可以使用 top
或 htop
命令。这些命令可以实时地显示出系统的CPU使用率、内存使用率、运行的进程等信息,并且还可以进行交互操作。