在linux系统作为和unix和ubuntu相同的系统,ps指令经常被用到查看程序进程的状态,但是这个指令具体怎么用您会吗?本文就以centos为例,结合项目中服务器的实际应用,给大家讲解下ps指令的用法。
一、参数
a——显示现行终端机下的所有程序,包括其他用户的程序。
A——显示所有程序。
c——列出程序时,显示每个程序真正的指令名称,而不包含路径,参数或常驻服务的标示。
e——列出程序时,显示每个程序所使用的环境变量。
f——用ASCII字符显示树状结构,更为完整的输出。
H——显示树状结构,表示程序间的相互关系。
l ——较长、较详细的将该PID 的的信息列出;
j ——工作的格式 (jobs format)
N——显示所有的程序,除了执行ps指令终端机下的程序之外。
s——采用程序信号的格式显示程序状况。
S——列出程序时,包括已中断的子程序资料。
u——以用户为主的进程状态 ;
x——通常与 a 这个参数一起使用,可列出较完整信息。
二、实例
1、ps不加任何参数可以输出参数,也可以 -ef在结合grep指令,显示更详细的结果。ps -ef |grep mysql
2、使用ps指令,输出进程的完整信息。ps -l
F——代表这个程序的旗标 (flag), 4 代表使用者为 superuser。
S——代表这个程序的状态 (STAT)。
UID——代表执行者身份。
PID——进程的ID号。
PPID——父进程的ID。
C——CPU使用的资源百分比。
PRI——指进程的执行优先权(Priority的简写),其值越小越早被执行。
NI——这个进程的nice值,其表示进程可被执行的优先级的修正数值。
ADDR——这个是内核函数。
SZ——使用掉的内存大小。
WCHAN——目前这个程序是否正在运作当中,若为 - 表示正在运作。
TTY——登入者的终端机位置。
TIME——使用掉的 CPU 时间。
CMD——所下达的指令名称。
3、使用ps指令列出目前所有正在内存当中的程序。ps aux |more
USER——该进程属于那个使用者账号。
—PID——该进程的进程ID号。
%CPU——该进程使用掉的 CPU 资源百分比;
%MEM——该进程所占用的物理内存百分比;
VSZ——该进程使用掉的虚拟内存量 (Kbytes)
RSS——该进程占用的固定的内存量 (Kbytes)
TTY——该进程是在那个终端机上面运作。
STAT——该程序目前的状态,主要的状态有:
START——该进程被触发启动的时间;
TIME——该进程实际使用 CPU 运作的时间。
COMMAND——该程序的实际指令。
4、查看特定用户进程。ps -u mysql
5、按照进程名和PID过滤进行过滤。ps -C musql