当前位置 : 主页 > 操作系统 > centos >

Linux系统中BSD风格的ps命令参数

来源:互联网 收集:自由互联 发布时间:2021-04-30
ps命令 描述 静态监控进程(程序被触发后 , 执行者的权限与属性、程序的程序码与所需数据等都会被载入内存中 , 操作系统并给予这个内存内的单元一个识别码 (Process ID,PID), 可以说

ps命令

描述

静态监控进程(程序被触发后 , 执行者的权限与属性、程序的程序码与所需数据等都会被载入内存中 , 操作系统并给予这个内存内的单元一个识别码 (Process  ID,PID), 可以说 , 进程就是一个正在运行中的程序,即cpu未完成的工作)。

用法

 ps  [options]1

选项

a          ## 关于当前环境的所有进程
x | -A      ## 列出所有的进程   
f          ## 显示进程从属关系
e          ## 显示进程调用环境工具的详细信息
l          ## 长列表显示进程的详细信息
u          ## 显示进程的用户信息
-a          ## 显示shell前台运行命令的进程,但不保函shell本身
-w          ## 显示加宽可以显示较多的信息
-au        ## 显示较详细的信息 
-aux        ## 显示所有包含其他使用者的进程
-e          ## 显示所有运行在系统上的进程
-f          ## 扩展了输出,这些扩展的列包含了有用的信息
-ef        ## 全格式显示进程信息

Linux系统使用的GNU ps命令支持3种不同类型的命令行参数

BSD 风格的参数,前面不加破折线
Unix 风格的参数,前面加单破折线
GNU 风格的长参数,前面加双破折线

STAT进程状态(第一个字符)

R (Running): 该程序正在运行中
S (Sleep): 该程序目前正在睡眠状态 (idle), 但可以被唤醒(signal)
D 不可被唤醒的睡眠状态 , 通常进程可能在等待 I/O 的情况
T 停止状态 (stop), 可能是在工作控制 ( 背景暂停 ) 或除错(traced) 状态
Z (Zombie): 僵尸状态 , 程序已经终止但却无法被移除至内存外

STAT进程状态(第二个字符)

L            ## 内存中有(页面)锁定空间
N            ## 优先级低
<            ## 优先级高
+            ## 前台运行
s            ## 该进程是控制进程(顶级进程)
l            ## 该进程是多线程的

示例

1、 ps  l    长格式输出

[root@test ~]# ps l
F  UID  PID  PPID PRI  NI    VSZ  RSS WCHAN  STAT TTY        TIME COMMAND
4    0  620  608  20  0 160724 17792 poll_s Ss+  tty1      0:00 /usr/bin/Xorg :0 -
4    0  1034  947  20  0 116144  2796 wait  Ss  pts/0      0:00 -bash
1    0  1078    1  20  0  16040  564 poll_s S    pts/0      0:00 dbus-launch --auto
0    0  3494  1034  20  0 121260  984 -      R+  pts/0      0:00 ps l

参数解释

F              ## 内核分配给进程的系统标记
UID            ## 启动这些进程的用户
PID            ## 进程的进程ID
PPID            ## 父进程的进程号(如果该进程是由另一个进程启动的)
PRI            ## 进程的优先级(越大的数字代表越低的优先级)
NI              ## 谦让度值用来参与决定优先级
VSZ            ## 进程在内存中的大小,以千字节(KB)为单位
RSS            ## 进程在未换出时占用的物理内存
WCHAN          ## 进程休眠的内核函数的地址
STAT            ## 当前进程状态的双字符状态码
TTY            ## 进程启动时的终端设备
TIME            ## 运行进程需要的累计CPU时间
COMMAND        ## 启动程序名称12345678910111213

2、 ps        ax 输出

[root@test ~]# ps ax
  PID TTY      STAT  TIME COMMAND
    1 ?        Ss    0:01 /usr/lib/systemd/systemd --switched-root --system --deserial
    2 ?        S      0:00 [kthreadd]
    3 ?        S      0:00 [ksoftirqd/0]
    5 ?        S<    0:00 [kworker/0:0H]
  10 ?        R      0:00 [rcu_sched]
  11 ?        S      0:00 [rcuos/0]
  12 ?        S      0:00 [watchdog/0]
...    ...    ...    ...  ...
  995 ?        Ssl    0:00 /usr/bin/gnome-session --autostart /usr/share/gdm/greeter/au
  998 ?        S      0:00 /usr/bin/dbus-launch --exit-with-session /usr/bin/gnome-sess
 1034 pts/0    Ss    0:00 -bash
 1048 ?        Ss    0:00 /bin/dbus-daemon --fork --print-pid 4 --print-address 6 --se
 1053 ?        Sl    0:00 /usr/libexec/at-spi-bus-launcher
 1070 ?        S      0:00 /bin/dbus-daemon --config-file=/etc/at-spi2/accessibility.co
 1075 ?        Sl    0:00 /usr/libexec/at-spi2-registryd --use-gnome-session
 1078 pts/0    S      0:00 dbus-launch --autolaunch=946cb0e817ea4adb916183df8c4fc817 --
...    ...  ...  ...    ...  ...
 4658 ?        S      0:00 [kworker/0:1]
 4898 ?        R      0:00 [kworker/0:0]
 4996 ?        S      0:00 sleep 60
 5005 ?        S      0:00 sleep 3
 5006 pts/0    R+    0:00 ps ax

参数解释

PID            ## 进程的进程用户
TTY            ## 进程启动时的终端设备
STAT            ## 当前进程状态的双字符状态码
TIME            ## 运行进程需要的累计CPU时间
COMMAND        ## 启动程序名称12345

2、 ps  -ef 输出

[root@test ~]# ps -ef
UID        PID  PPID  C STIME TTY          TIME CMD
root        1    0  0 09:08 ?        00:00:01 /usr/lib/systemd/systemd --switched-roo
root        2    0  0 09:08 ?        00:00:00 [kthreadd]
root        3    2  0 09:08 ?        00:00:00 [ksoftirqd/0]
root        5    2  0 09:08 ?        00:00:00 [kworker/0:0H]
root        7    2  0 09:08 ?        00:00:00 [migration/0]
root        8    2  0 09:08 ?        00:00:00 [rcu_bh]

参数解释

UID          #启动这些进程的用户
PID          #进程的进程用户
PPID        #父进程的进程号(如果该进程是由另一个进程启动的)
C            #进程生命周期中的CPU利用率
STIME        #进程启动时的系统时间
TTY          #进程启动时的终端设备
TIME        #运行进程需要的累计CPU时间
CMD          #启动程序名称12345678

3、 ps  -au(x) 输出

[root@test ~]# ps -au
USER      PID %CPU %MEM    VSZ  RSS TTY      STAT START  TIME COMMAND
root      618  0.0  0.4 160724 17800 tty1    Ss+  22:25  0:00 /usr/bin/Xorg :0 -background none -v
root      2231  0.0  0.0 116144  2780 pts/0    Ss  22:50  0:00 -bash
root      2273  0.0  0.0  16040  572 pts/0    S    22:50  0:00 dbus-launch --autolaunch=946cb0e817e
root      3046  0.0  0.0 123356  1320 pts/0    R+  23:06  0:00 ps -au
[root@test ~]# ps -aux
USER      PID %CPU %MEM    VSZ  RSS TTY      STAT START  TIME COMMAND
root        1  0.0  0.1  49940  3944 ?        Ss  22:25  0:01 /usr/lib/systemd/systemd --switched-
root        2  0.0  0.0      0    0 ?        S    22:25  0:00 [kthreadd]
root        3  0.0  0.0      0    0 ?        S    22:25  0:00 [ksoftirqd/0]
root        5  0.0  0.0      0    0 ?        S<  22:25  0:00 [kworker/0:0H]
root        7  0.0  0.0      0    0 ?        S    22:25  0:00 [migration/0]
... ... ... ... ... ... 1234567891011121314

其代表含义如下:USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND

USER:  进程拥有者
PID:  pid
%CPU:  占用的 CPU 使用率
%MEM:  占用的内存使用率
VSZ:  占用的虚拟内存大小
RSS:  占用的内存大小
TTY:  进程启动时的终端设备
STAT:  该进程的状态:
    D: 不可中断的静止
    R: 正在执行中
    S: 静止状态
    T: 暂停执行
    Z: 不存在但暂时无法消除
    W: 没有足够的内存分页可分配
    <: 高优先序的进程
    N: 低优先序的进程
    L: 有内存分页分配并锁在内存内
START: 进程开始时间
TIME:  执行的时间
COMMAND: 所执行的指令

网友评论