ps [选项]
-A:显示系统中所有进程的信息
-l: 以长格式显示进程信息
-e: 显示所有进程信息
-f: 显示完整信息
-r: 正在运行的进程
-a: 与终端相关进程
-u: 以用户熟悉格式显示
-x: 与终端无关的进程
-p: 显示由进程ID指定的进程信息
-t: 显示指定终端上的进程信息
1:仅查看自己的BASH的相关进程
F;表示为程序权限总结,4表示为root,若1为此子进程仅进行复制没有运行
S:为程序状态(stat),主要状态如下:
R (Running):该程序正在运行
S (Sleep):该程序目前正在睡眠状态(idle),但可以被唤醒(signal)。
D :不可被唤醒的睡眠状态,通常这支程序可能在等待 I/O 的情况(ex>列印)
T :停止状态(stop),可能是在工作控制(背景暂停)或除错 (traced) 状态;
Z (Zombie):僵尸状态,程序已经终止但却无法被移除至内存外
s:会话的创建者
+:正在前台运行进程
l:多线程进程
<: 高优先级进程
N: 低有线进程
UID/PID/PPID:代表『此程序被该 UID 所拥有/程序的 PID 号码/此程序的父程序 PID 号码』
C:代表 CPU 使用率,单位为百分比
PRI/NI:Priority/Nice 的缩写,代表此程序被 CPU 所运行的优先顺序,数值越小代表该程序越快被 CPU 运行
ADDR/SZ/WCHAN:都与内存有关,ADDR 是 kernel function,指出该程序在内存的哪个部分,如果是个 running 的程序,一般就会显示『 - 』 / SZ 代表此程序用掉多少内存 / WCHAN 表示目前程序是否运行中,同样的, 若为 - 表示正在运行中。
TTY:登陆者的终端机位置,若为远程登陆则使用动态终端介面 (pts/n); ?时为与终端无关的进程
TIME:使用掉的 CPU 时间,注意,是此程序实际花费 CPU 运行的时间,而不是系统时间
CMD:就是 command 的缩写,造成此程序的触发程序之命令为何
2:ps -ef 是用标准的格式显示进程的、其格式如下
其中各列的内容意思如下
UID //用户ID、但输出的是用户名
PID //进程的ID
PPID //父进程ID
C //进程占用CPU的百分比
STIME //进程启动时间
TTY //该进程在那个终端上运行,若与终端无关,则显示? 若为pts/0等,则表示由网络连接主机进程。
CMD //命令的名称和参数
3:ps aux 是用BSD的格式来显示、其格式如下
同ps -ef 不同的有列有USER //用户名
PID // 程序pid 号%CPU //进程占用的CPU百分比 %MEM //占用物理内存的百分比 VSZ //该进程使用的虚拟內存量(Kbytes) RSS //该进程占用的固定內存量(Kbytes)(驻留中页的数量)
TTY //tty1-tty6本机上面的登入者程序,如果为pts/0, pts1等,就表示是由网络链接进入主机的程序
STAT //进程的状态 ,有R,S,T,Z
R (Running):该程序正在运行
S (Sleep):该程序目前正在睡眠状态(idle),但可以被唤醒(signal)。
D :不可被唤醒的睡眠状态,通常这支程序可能在等待 I/O 的情况(ex>列印)
T :停止状态(stop),可能是在工作控制(背景暂停)或除错 (traced) 状态;
Z (Zombie):僵尸状态,程序已经终止但却无法被移除至内存外
s:会话的创建者
+:正在前台运行进程
l:多线程进程
<: 高优先级进程
N: 低有线进程
START //该进程被触发启动时间 TIME //该进程实际使用CPU运行的时间
COMMAND //运行改程序的指令
4:top
top [-d 数字][-bnp]
选项:
-d :后面接秒数,就是刷新秒数,默认为5秒
-b : 以批次方面的执行top
-n :与 -b 搭配,意思是需要几次top的输出结果
# tob -b -n 3 输出top3次结果并保存到top.txt里
-p :监测指定某个pid
# top -d 2 -p 93553 监视pid为93553这个程序
top执行过程中可以用的按键指令:
?:显示在top当中可以输入的按键指
P: 大写P 以占用CPU%大小排序
M:大写M 以占用memory空间大小排序
T:大定T 以cpu累积占用时间排序
N:大写N 以pid排序
l:是否显示系统的负载行。队列长度的合理区间,CPU颗数*0.7
t: 是否显示进程摘要信息及CPU负载状态
i:平均和单独CPU负债状态。
m: 是否显示内在相关的状态
q:退出命令
s:修改刷新时长
k:杀死或终止进程
top - 00:22:51 up 752 days, 23:04, 55 users, load average: 0.00, 0.14, 0.43
系统时间 系统运行时长 用户数 1 ,5,15分钟平均数
Tasks: 1054 total, 1 running, 1051 sleeping, 1 stopped, 1 zombie
总运行程序数 运行进程 睡眠进程 停止进程 僵尸进程
Cpu(s): 0.5%us, 1.0%sy, 0.0%ni, 98.3%id, 0.1%wa, 0.0%hi, 0.1%si, 0.0%st
us: user space 用户空间程序占用百分比
sy: system (kernel space) 内核占用%
ni: nice,越小越早运行
id: idle 空闲%
wa: wait io 等待IO占用%
hi: hardware inerrupt 处理硬件中断占用%
si: software interrupt 处理软件中断占用%
st: stolen 被虚拟机“偷走”的%
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
PID:进程号
USER:进程所有者
PR:优先级别
NI:进程优先级别数字
VIRT:进程占用的虚拟内存值
RES:进程占用的物理内存
SHR:进程使用的共享内存值
S:状态码
%CPU:占用的CPU使用率
%MEM:占用物理内在和总内存的百分比
TIME+:该进程启动后占用的总CPU时间
COMMAND:启动该进程的命令
pstreepstree:显示进程状态树,pstree命令可以列出当前的进程,以及它们的树状结构。 主要选项如下。-a:显示执行程序的命令与完整参数。-c:取消同名程序,合并显示。-n:以PID大小排序。-p:显示PID。-u:显示UID信息。使用ps命令得到的数据精确,但数据庞大,这一点对掌握系统整体概况来说是不容易的。pstree命令正好可以弥补这个缺憾。它能将当前的执行程序以树状结构显示。pstree命令支持指定特定程序(PID)或使用者(USER)作为显示的起始。常用的命令pstree -a显示全部信息pstree -p显示进程pid号
pidof命令:
pidof [进程名]
[root@centos ~]# pidof /usr/sbin/vsftpd
3339
pgrep 命令
语法格式:pgrep [OPTIONS] "PATTERN"
-U UID: 以指定用户身体运行
-G GID:
-l :显示PID号和进程名
htop:
交互命令:
u:仅显示选定用户的进程
s:跟踪选定的进程发起的系统调用
l:显示选定的进程打的的文件
t:显示进程的层次结构
a:讲进程绑定指定的CPU上
选项:-d # :延迟时长
-u USERNAME:仅显示指定用户的进程
-s COLUMN:根据指定的字段排序