Linux的ps命令

文章作者:Tyan
博客:noahsnail.com  |  CSDN  |  简书

1. ps命令介绍及Linux进程状态介绍

Linux中的ps命令是Process Status的缩写,ps命令用来列出系统中当前运行的那些进程。ps命令可以列出当前进程的运行情况(状态、时间等信息)。在Linux系统中,进程有5中状态,在ps命令中分别用5个大写字母表示:

  • R (TASK_RUNNING),可执行状态。
    runnable (on run queue),正在运行或在运行队列中等待的进程
  • S (TASK_INTERRUPTIBLE),可中断的睡眠状态。
    sleeping,处于这个状态的进程因为等待某某事件的发生(比如等待socket连接、等待信号量),而被挂起。
  • D (TASK_UNINTERRUPTIBLE),不可中断的睡眠状态。
    uninterruptible sleep (usually IO),进程处于睡眠状态,但是此刻进程是不可中断的。不可中断,指的并不是CPU不响应外部硬件的中断,而是指进程不响应异步信号。
  • T (TASK_STOPPED or TASK_TRACED),暂停状态或跟踪状态。
    traced or stopped,进程处于睡眠状态,但是此刻进程是不可中断的。不可中断,指的并不是CPU不响应外部硬件的中断,而是指进程不响应异步信号。(进程收到SIGSTOP, SIGSTP, SIGTIN, SIGTOU信号后停止运行)。
  • Z (TASK_DEAD - EXIT_ZOMBIE),退出状态,进程成为僵尸进程。
    a defunct process,在这个退出过程中,进程占有的所有资源将被回收,除了task_struct结构(以及少数资源)。

除此之外,还有ps命令还有一些进程状态信息:

  • < 优先级高的进程
  • l 多线程状态
    • 前台进程
  • L 锁定状态
  • N 优先级低的进程

2. ps命令用法

默认情况下,ps命令只会显示运行在当前控制台下的属于当前用户的进程。

$ ps
  PID TTY           TIME CMD
50498 ttys000    0:00.02 -bash

$ ps -f
  UID   PID  PPID   C STIME   TTY           TIME CMD
  501 50498 50497   0  9:27下午 ttys000    0:00.08 -bash

$ ps -l
  UID   PID  PPID        F CPU PRI NI       SZ    RSS WCHAN     S             ADDR TTY           TIME CMD
  501 50498 50497     4006   0  31  0  2466156   1648 -      S                   0 ttys000    0:00.08 -bash

ps命令的结果列信息表示如下:

  • UID 启动进程的用户
  • PID 进程ID
  • PPID 进程的父进程ID
  • C 进程生命周期中的CPU利用率
  • TTY 运行在哪个终端
  • TIME 进程已用CPU时间
  • CMD 进程的命令
  • F 内核分配给进程的标记
  • PRI 进程的优先级
  • NI 谦让度值用来参与决定优先级
  • SZ 如果进程被换出,所需要的空间大小
  • WCHAN 进程休眠的内核函数的地址
  • ADDR 进程的内存地址
  • S 进程的状态,(O表示正在运行,S表示休眠,R表示运行,Z代表僵化,T代表停止)

ps命令的常用参数有:

  • -e,-A 显示所有进程
  • -f 显示完整格式的输出
  • -l 显示长列表
  • -a,所有进程,加上-x参数会显示没有控制终端的进程
  • -u username,显示指定用户的进程,例如ps -u ltc
  • -aux 按照CPU或者内存用量来筛选进程,例如ps -aux --sort -pcpups -aux --sort -pmem
  • -C cmdlist,显示包含在cmdlist列表中的进程,例如ps -C test
  • -L 显示进程中的线程,例如ps -L 123,123为进程ID
  • -j 显示任务信息
  • -H 用层级显示进程,树状结构

ps命令参数还有很多,根据需要自己查询吧。

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值