IT技术博客大学习 共学习 共进步
全部 移动开发 后端 数据库 AI 算法 安全 DevOps 前端 设计 开发者

Linux进程管理命令详解(ps和top)

Vimer 2009-12-01 23:19:55 累计浏览 3,909 次
本机暂存

    Linux进程管理命令详解(ps和top)

    1.ps命令

    作用:ps命令主要查看系统中进程的状态。

    格式:ps [选项]

    主要选项如下。

以下是引用片段:
-A:显示系统中所有进程的信息。
-e:显示所有进程的信息。
-f:显示进程的所有信息。
-l:以长格式显示进程信息。
-r:只显示正在运行的进程。
-u:显示面向用户的格式(包括用户名、CPU及内存使用情况等信息)。
-x:显示所有非控制终端上的进程信息。
-p:显示由进程ID指定的进程的信息。
-t:显示指定终端上的进程的信息。

    说明:要对进程进行监测和控制,首先要了解当前进程的情况,也就是需要查看当前进程。ps命令就是最基本、也是非常强大的进程查看命令。根据显示的信息可以确定哪个进程正在运行、哪个进程被挂起、进程已运行了多久、进程正在使用的资源、进程的相对优先级,以及进程的标志号(PID)。所有这些信息对用户都很有用,对于系统管理员来说更为重要。使用”ps -aux”命令可以获得终端上所有用户的有关进程的所有信息,下面结合图讲解进程的基本信息。

    130727331

    图中第二行代码中,USER表示启动进程用户。PID表示进程标志号。%CPU表示运行该进程占用CPU的时间与该进程总的运行时间的比例。%MEM表示该进程占用内存和总内存的比例。VSZ表示占用的虚拟内存大小,以KB为单位。RSS为进程占用的物理内存值,以KB为单位。TTY表示该进程建立时所对应的终端,”?”表示该进程不占用终端。STAT表示进程的运行状态,包括以下几种代码:D,不可中断的睡眠;R,就绪(在可运行队列中);S,睡眠;T,被跟踪或停止;Z,终止(僵死)的进程,Z不存在,但暂时无法消除;W,没有足够的内存分页可分配;<高优先序的进程;N,低优先序的进程;L,有内存分页分配并锁在内存体内(实时系统或I/O)。START为进程开始时间。TIME为执行的时间。COMMAND是对应的命令名。

    应用实例如下。

    在进行系统维护时,如果CPU负载突然增加,而又不知道是哪一个进程造成的情况。使用命令:

以下是代码片段:
#ps aux | sort +3n 

    因为%CPU选项在第三列,所以sort选3作为参数,+表示升序输出结果。

    2.top命令

    top命令用来显示系统当前的进程状况。

    格式:top [选项]

    主要选项如下。

以下是引用片段:
d:指定更新的间隔,以秒计算。
q:没有任何延迟的更新。如果使用者有超级用户,则top命令将会以最高的优先序执行。
c:显示进程完整的路径与名称。
S:累积模式,会将已完成或消失的子进程的CPU时间累积起来。
s:安全模式。
i:不显示任何闲置(Idle)或无用(Zombie)的进程。
n:显示更新的次数,完成后将会退出top。

    说明:top命令和ps命令的基本作用是相同的,都显示系统当前的进程状况。但是top是一个动态显示过程,即可以通过用户按键来不断刷新当前状态。这里结合图来说明它给出的信息。

    130918550

    在图中,第一行表示的项目依次为当前时间、系统启动时间、当前系统登录用户数目、平均负载。第二行显示的是所有启动的、目前运行的、挂起(Sleeping)的和无用(Zombie)的进程。第三行显示的是目前CPU的使用情况,包括系统占用的比例、用户使用比例、闲置(Idle)比例。第四行显示物理内存的使用情况,包括总的可以使用的内存、已用内存、空闲内存、缓冲区占用的内存。第五行显示交换分区的使用情况,包括总的交换分区、使用的、空闲的和用于高速缓存的交换分区。第六行显示的项目最多,下面列出了详细解释。

    PID(Process ID):进程标志号,是非零正整数。USER:进程所有者的用户名。PR:进程的优先级别。NI:进程的优先级别数值。VIRT:进程占用的虚拟内存值。RES:进程占用的物理内存值。SHR:进程使用的共享内存值。STAT:进程的状态,其中S表示休眠,R表示正在运行,Z表示僵死状态,N表示该进程优先值是负数。%CPU:该进程占用的CPU使用率。%MEM:该进程占用的物理内存和总内存的百分比。TIME:该进程启动后占用的总的CPU时间。COMMAND:进程启动的启动命令名称,如果这一行显示不下,进程会有一个完整的命令行。top命令使用过程中,还可以使用一些交互的命令来完成其他参数的功能。这些命令是通过快捷键启动的。

以下是引用片段:
<空格>:立刻刷新。
P:根据CPU使用大小进行排序。
T:根据时间、累计时间排序。
q:退出top命令。
m:切换显示内存信息。
t:切换显示进程和CPU状态信息。
c:切换显示命令名称和完整命令行。
M:根据使用内存大小进行排序。
W:将当前设置写入~/.toprc文件中。这是写top配置文件的推荐方法。

    可以看到,top命令是一个功能十分强大的监控系统的工具,对于系统管理员而言尤其重要。但是,它的缺点是会消耗很多系统资源。原图已失效

同分类推荐文章

  1. 从零重建 macOS 开发机:可复现的环境初始化流程 (2026-06-14 20:36:00)
  2. 百度物理网络监控工具开源第二弹:毫秒级监控工具 baize,让你的网络问题无处遁形 (2026-06-11 08:10:28)
  3. How to Set Up Homebrew Tap for Private CLI Tools: A Complete Guide (2026-05-27 02:13:03)

查看更多 DevOps 文章 →

建议继续学习

  1. Linux如何统计进程的CPU利用率 (累计阅读 16,308)
  2. 我的 RHCA 之路 (累计阅读 14,014)
  3. Linux内存点滴 用户进程内存空间 (累计阅读 13,232)
  4. 给程序员新手的一些建议 (累计阅读 13,090)
  5. Linux 性能监控、测试、优化工具 (累计阅读 13,013)
  6. 关于linux内存free的一些事情 (累计阅读 12,871)
  7. ps - 按进程消耗内存多少排序 (累计阅读 12,691)
  8. Google怎么用linux (累计阅读 12,583)
  9. Linux Used内存到底哪里去了? (累计阅读 11,868)
  10. find命令的一点注意事项 (累计阅读 11,867)