zoukankan      html  css  js  c++  java
  • ps命令

    # ps命令
    选项:
    a:显示现行终端机下的所有进程,包括其他用户的进程;
    u:显示进程拥有者、状态、资源占用等的详细信息(注意有“-”和无“-”的区别);
    x:显示没有控制终端的进程。通常与 a 这个参数一起使用,可列出较完整信息;
    -e:显示所有进程;
    -f:完整输出显示进程之间的父子关系;
    -l:较长、较详细的将该 PID 的的信息列出;
    -o:自定义显示的字段;
    注:ps -aux 不同于 ps aux
    -----------------------------------------
    # ps -ef
    UID PID PPID C STIME TTY TIME CMD
    root 1 0 0 08:29 ? 00:00:00 /sbin/init
    root 13 2 0 08:29 ? 00:00:00 [sync_supers]
    PPID:父进程PID
    ------------------------------------------
    # ps -aux
    USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
    root 1 0.0 0.1 19356 968 ? Ss 08:29 0:00 /sbin/init
    root 2 0.0 0.0 0 0 ? S 08:29 0:00 [kthreadd]
    说明:
    USER: 运行进程的用户
    PID: 进程ID
    %CPU: CPU占用率
    %MEM: 内存占用率
    VSZ: 占用虚拟内存
    RSS: 占用实际内存 驻留内存
    TTY: 进程运行的终端
    STAT: 进程状态 man ps (/STATE)
    R 运行
    S 可中断睡眠 Sleep
    D 不可中断睡眠
    T 停止的进程
    Z 僵尸进程
    X 死掉的进程
    Ss s进程的领导者,父进程
    S< <优先级较高的进程
    SN N优先级较低的进程
    R+ +表示
    前台的进程组
    Sl 以线程的方式运行
    START: 进程的启动时间
    TIME: 进程占用CPU的总时间
    COMMAND: 进程文件,进程名
    ------------------------------------------------------
    查看当前系统进程的uid,pid,stat,pri, 以uid号排序:
    ps -eopid,stat,pri,uid --sort uid
    ps axo user,pid,rss,cmd | head ----自定义显示的字段:user,pid,rss,cmd
    通过cpu/mem的使用来过滤排序:
    ps aux --sort -%cpu | more ----more:分页显示,按cpu使用排序
    ps aux --sort -pcpu | more ----按cpu使用排序
    ps aux --sort -pmem | more ----按mem使用排序
    ps -aux | sort -k4nr | head -10
    root 1244 0.0 3.1 286056 15460 ? Ssl 20:17 0:02 /usr/bin/kube-proxy --logtostderr=true --v=0 --master=http://192.168.1.50:8080
    root 1233 0.0 2.5 553052 12564 ? Ssl 20:17 0:01 /usr/bin/python -Es /usr/sbin/tuned -l -P
    root 3715 0.0 2.5 457180 12192 ? Ss 20:46 0:00 /usr/sbin/httpd -DFOREGROUND
    root 4987 0.2 2.5 219116 12300 ? Ssl 21:46 0:00 /usr/bin/flanneld -etcd-endpoints=http://192.168.1.50:2379 -etcd-prefix=/atomic.io/network
    root 929 0.0 1.9 285296 9384 ? Ssl 20:16 0:00 /usr/sbin/rsyslogd -n
    root 1248 0.0 1.7 558076 8276 ? Ssl 20:17 0:00 /usr/sbin/libvirtd
    apache 4628 0.0 1.6 459264 7780 ? S 21:26 0:00 /usr/sbin/httpd -DFOREGROUND
    USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
    sort -k4nr中(k代表从根据哪一个关键词排序,后面的数字4表示按照第四列排序;n指代numberic sort,根据其数值排序;r指代reverse,这里是指反向比较结果,输出时默认从小到大,反向后从大到小。)。本例中,可以看到%MEM在第4个位置,根据%MEM的数值进行由大到小的排序。-k3表示按照cpu占用率排序。
    通过进程名和PID:
    ps -C java
    ---> PID TTY TIME CMD
    ps -f -C java
    ---> UID PID PPID C STIME TTY TIME CMD
    root 1247 1 0 08:58 ? 00:00:00 /usr/sbin/sshd -D
    root 27688 1247 0 10:07 ? 00:00:04 sshd: root@pts/0
    根据线程来过滤进程:想知道特定进程的线程:
    ps -L pid
    ps -p 3785 -L
    ps -eLf ---查看线程
    显示安全信息,如果想要查看现在有谁登入了你的服务器:
    ps -eo user,pid,args
    格式化输出某用户(真实的或有效的UID)创建的进程: 系统管理员想要查看由pag用户运行的进程和这个进程的其他相关信息时: ps -U root -u pag u    -U:参数按真实用户ID(RUID)筛选进程,它会从用户列表中选择真实用户名或ID。真实用户即实际创建该进程的用户;    -u:参数用来筛选有效用户ID(EUID)    最后的u参数用来决定以针对用户的格式输出,由User, PID, %CPU, %MEM, VSZ, RSS, TTY, STAT, START, TIME 和 COMMAND这几   列组成。
    ps实时监控进程状态:与watch命令结合:
    watch -n 1 ‘ps -aux --sort -pmem’
    watch命令:
    watch [options] COMMAND
    -n:周期
    -d:高亮显示
    -t:关闭watch命令在顶部的时间间隔
    ---------------------------------
    pstree:查看进程树
    监控线程数:ps -ef | grep java | wc -l
    监控网络客户连接数:netstat -n | grep tcp | grep 侦听端口 | wc -l
  • 相关阅读:
    结构体排序
    字符串转下标
    格式控制1
    Prime
    n阶导函数存在与n阶可导的区别
    winrar
    android 上传文件(表单),表单填写格式分析
    android form表单上传文件
    Android排错:has leaked window com.android.internal.policy.impl.PhoneWindow$ that was originally added here
    android 软键盘Enter键图标的设置 android:imeOptions
  • 原文地址:https://www.cnblogs.com/skyzy/p/9433473.html
Copyright © 2011-2022 走看看