zoukankan      html  css  js  c++  java
  • linux ps命令详解

    ps命令(全称:process status)是linux查看当前系统中进程状态的常用命令,比如我们可以通过以下命令查看当前系统所有进程信息:

    ps -aux
    

    执行结果如下:

    如果查看指定的进程,如java进程,可以通过管道符和grep命令进行过滤,命令如下:

    ps -aux|grep java

    执行结果如下:

     ps命令详细介绍

    ps命令的用法如下:

    ps [options]
    

    options表示命令参数,详细的参数列表如下:

    -A 显示所有进程(等价于-e)
    -a 显示一个终端的所有进程,除了会话引线
    -e 显示所有进程(等价于-A)
    -N 忽略选择
    -d 显示所有进程,但省略所有的会话引线
    -x 显示没有控制终端的进程,同时显示各个命令的具体路径。dx不可合用
    -p pid 进程使用cpu的时间
    -u uid or username 选择有效的用户id或者是用户名
    -g gid or groupname 显示组的所有进程
    U username 显示该用户下的所有进程,且显示各个命令的详细路径,如:ps U admin;ps -fU root
    -f  全部列出,通常和其他选项联用
    -l  长格式(有F,wchan,C 等字段)
    -j  作业格式
    -o 用户自定义格式
    v   以虚拟存储器格式显示
    s   以信号格式显示
    -m 显示所有的线程
    -H 显示进程的层次(和其它的命令合用,如:ps -Ha)
    e   命令之后显示环境
    h   不显示第一行
    --lines<行数> 每页显示的行数
    --width<字符数> 每页显示的字符数
    --help 显示帮助信息
    --version 显示版本信息

    针对STAT(进程当前状态)的描述如下:

    D  无法中断的休眠状态(通常 IO 的进程)
    R  正在运行可中在队列中可过行的
    S  处于休眠状态
    T  停止或被追踪
    W 进入内存交换 (从内核2.6开始无效)
    X  死掉的进程 (基本很少见)
    Z  僵尸进程
    <  优先级高的进程
    N  优先级较低的进程
    L 有些页被锁进内存
    s  进程的领导者(在它之下有子进程)
    l  多线程,克隆线程(使用 CLONE_THREAD, 类似 NPTL pthreads)
    +  位于后台的进程组

     实例操作

    1. 杀掉java进程(慎用)

    #查看java进程
    ps -aux|grep java
    #获取java进程号,如55555,通过kill命令关闭进程(-9表示强制关闭)
    kill -9 55555
    

    是不是觉得很麻烦,那么就用一个命令表达式来完成上面的功能

    #要确保当前系统只有一个java进程,防止误杀
    ps -uax|grep java|awk '{print $2}'|xargs kill -9
    

     2. 查看cpu占用率前10的进程

    #这里head命令后的11,包含第1行的列信息
    ps -aux --sort=-pcpu|head -11
    

  • 相关阅读:
    BZOJ4987 Tree
    BZOJ4817 [SDOI2017]树点涂色
    BZOJ4811: [YNOI2017] 由乃的OJ
    BSGS算法
    codeforces914G Sum the Fibonacci
    NOI2018网络同步赛游记
    雅礼集训 2017 Day2 水箱 可并堆
    CTSC&APIO2018游记
    51Nod 有限背包计数问题 题解报告
    CTSC2016&&APIO2016游记
  • 原文地址:https://www.cnblogs.com/atai/p/14393027.html
Copyright © 2011-2022 走看看