admin管理员组

文章数量:1586727

一、基本命令

  1. ps -aux 静态查看当前进程信息

USER:执行该进程的用户名
PID:进程标识符
%CPU:cpu占用率
%MEM:内存占用率
VSZ:使用的虚拟内存量(KB)
RSS:使用的固定内存量(KB)
TTY:在哪个终端上执行(?无终端,pts/0由网络连接主机进程)
STAT:进程的状态(D不可中断,R运行,S中断,T停止,Z僵死)
START:进程开始的时间
TIME:进行执行了多久
COMMAND:进程执行的命令,进程名

  1. ps -ef 静态查看当前进程信息

UID: 执行该进程的用户名
PID::进程id
PPID:进程的父id
C:cpu占用率
STIME:进程的启动时间
TTY:发起该进程的设备识别符号(如果是?表示该进程不是由终端发起的)
TIME:进程的运行时间
CMD:进程名

  1. top -c 实时查看当前进程信息,获取到的进程信息是动态的

PID:进程标识符
USER:执行该进程的用户名
PR:priority优先级【数值越小优先级越高,“rt”表示任务正在实时调度优先级下运行】
NI:优先级的修正数值,通常通过修改NI的值来间接修改PR(PR=20+NI)【数值越小优先级越高,抢占cpu资源的能力越强。0是默认值,数值范围是-20到19】
VIRT: 进程使用的虚拟内存(KB)
RES: 进程使用二常驻内存(KB)
SHR: 进程使用的共享内存(KB)
S: 进程的状态
%CPU: 进程占用的cpu情况
%MEM: 进程占用的内存情况
TIME+: 进程占用的CPU时常
COMMAND: 进程名

  1. kill pid杀死进程
    kill -9 pid强制杀死进程
    killall name杀死进程名为name的进程

killkillall的区别:
1. kill根据PID来杀死进程, killall根据进程名来杀死进程
2. 由于PID是唯一的,所以kill只能杀死一个进程;由于一个进程名可能对应多个进程,所以killall可以将多个进程名为name的进程杀死

二、常用命令

  1. ps aux | grep 指定进程 查看指定进程的信息(可以是指定进程名、PID)

  2. ps -aux --sort=-pcpu|head -11 列出cpu使用量前世的进程

  3. ps -aux --sort=-pmem|head -11 列出内存使用量前世的进程

  4. ps aux | grep -v PID | sort -rn -k+3 | head > /tmp/task.csv 获取当前cpu使用量前10的进程信息并保存到 /tmp/task.csv 文件中(ps aux命令获取的信息中,第三列是cpu信息,第四列是mem信息,-k+3是以第三列cpu占用率分类,-k+4是以第四列mem占用率分类,以此类推)

  5. ps -p PID -o command
    输出指定进程的指定参数(此处command可以替换为其他进程信息,如%cpu,pid,ppid等)
    以上图为例,如果只想显示进程名"AliYunDun",而不是完整的执行命令,可以使用ps -p PID -o comm

可以看到第一行为"COMMAND",这是对获取的参数的说明,说明该列为"COMMAND",因为ps -o 参数1 参数2 参数3命令后面可以跟多个参数,当获取多列参数时,第一行的参数说明可以帮我们分清每列代表的信息是什么。如果不需要该参数说明,可以通过ps -p PID -o command=来只获取需要的参数信息

本文标签: 进程常用命令Linux