ps aux|grep xxx详解

linux命令ps aux|grep xxx详解

要对进程进行监测和控制,首先必须要了解当前进程的情况,也就是需要查看当前进程, 而ps命令(Process Status)就是最基本同时也是非常强大的进程查看命令.

使用该命令 可以确定有哪些进程正在运行和运行的状态、进程是否结束、进程有没有僵尸、哪些进程占用了过多的资源等等.总之大部分信息都是可以通过执行该命令得到的.

ps 为我们提供了进程的一次性的查看,它所提供的查看结果并不动态连续的;

如果想对进程时间监控,应该用 top 工具。

如果直接用ps命令,会显示所有进程的状态,通常结合grep命令查看某进程的状态。

grep (global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。

使用示例:

[root@node20 updateDB]# ps aux|grep ./update_stock

root 14232 0.0 0.0 5928 724 pts/1 S+ 18:16 0:00 grep ./update_stock

root 25021 0.0 0.0 3056 816 ? S Apr12 0:03 ./update_stock

ps aux输出格式:

USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND


-----------自己操作start-------------------------------------------------

# ps aux|grep tomcat


root      1204  0.0  0.0 106100    88 ?        S    Apr26   0:00 /bin/sh /data1/app/services/tomcat-violation-mobile/bin/catalina.sh start
root      1205  0.0  0.0   4120   272 ?        S    Apr26   0:04 /usr/sbin/cronolog /data1/app/services/tomcat-violation-mobile/logs/catalina.out.%Y-%m-%d.log
root      1206  0.3  6.2 950608 255260 ?       Sl   Apr26 837:27 /usr/java/jdk1.6.0_45/jre/bin/java -Djava.util.logging.config.file=/data1/app/services/tomcat-violation-mobile/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -server -XX:PermSize=128M -XX:MaxPermSize=256M -Xms512M -Xmx512M -Djava.endorsed.dirs=/data1/app/services/tomcat-violation-mobile/endorsed -classpath /data1/app/services/tomcat-violation-mobile/bin/bootstrap.jar:/data1/app/services/tomcat-violation-mobile/bin/tomcat-juli.jar -Dcatalina.base=/data1/app/services/tomcat-violation-mobile -Dcatalina.home=/data1/app/services/tomcat-violation-mobile -Djava.io.tmpdir=/data1/app/services/tomcat-violation-mobile/temp org.apache.catalina.startup.Bootstrap start


-----------自己操作end-------------------------------------------------



格式说明:

USER: 行程拥有者

PID: pid

%CPU: 占用的 CPU 使用率

%MEM: 占用的记忆体使用率

VSZ: 占用的虚拟记忆体大小

RSS: 占用的记忆体大小

TTY: 终端的次要装置号码 (minor device number of tty)

STAT: 该行程的状态,linux的进程有5种状态:

D 不可中断 uninterruptible sleep (usually IO)

R 运行 runnable (on run queue)

S 中断 sleeping

T 停止 traced or stopped

Z 僵死 a defunct (”zombie”) process

注: 其它状态还包括W(无驻留页), <(高优先级进程), N(低优先级进程), L(内存锁页).

START: 行程开始时间

TIME: 执行的时间

COMMAND:所执行的指令

1) ps a 显示现行终端机下的所有程序,包括其他用户的程序。
2)ps -A 显示所有程序。 
3)ps c 列出程序时,显示每个程序真正的指令名称,而不包含路径,参数或常驻服务的标示。 
4)ps -e 此参数的效果和指定"A"参数相同。 
5)ps e 列出程序时,显示每个程序所使用的环境变量。 
6)ps f 用ASCII字符显示树状结构,表达程序间的相互关系。 
7)ps -H 显示树状结构,表示程序间的相互关系。 
8)ps -N 显示所有的程序,除了执行ps指令终端机下的程序之外。 
9)ps s 采用程序信号的格式显示程序状况。 
10)ps S 列出程序时,包括已中断的子程序资料。 
11)ps -t  指定终端机编号,并列出属于该终端机的程序的状况。 
12)ps u  以用户为主的格式来显示程序状况。 
13)ps x  显示所有程序,不以终端机来区分。
ps是显示当前状态处于running的进程,grep表示在这些里搜索,而ps aux是显示所有进程和其状态。

$ ps aux | grep amoeba

查到amoeba的进程

$ kill -s 9 pid

杀死进程

发布了195 篇原创文章 · 获赞 52 · 访问量 31万+

1) ps a 显示现行终端机下的所有程序,包括其他用户的程序。
2)ps -A 显示所有程序。 
3)ps c 列出程序时,显示每个程序真正的指令名称,而不包含路径,参数或常驻服务的标示。 
4)ps -e 此参数的效果和指定"A"参数相同。 
5)ps e 列出程序时,显示每个程序所使用的环境变量。 
6)ps f 用ASCII字符显示树状结构,表达程序间的相互关系。 
7)ps -H 显示树状结构,表示程序间的相互关系。 
8)ps -N 显示所有的程序,除了执行ps指令终端机下的程序之外。 
9)ps s 采用程序信号的格式显示程序状况。 
10)ps S 列出程序时,包括已中断的子程序资料。 
11)ps -t  指定终端机编号,并列出属于该终端机的程序的状况。 
12)ps u  以用户为主的格式来显示程序状况。 
13)ps x  显示所有程序,不以终端机来区分。
ps是显示当前状态处于running的进程,grep表示在这些里搜索,而ps aux是显示所有进程和其状态。

$ ps aux | grep amoeba

查到amoeba的进程

$ kill -s 9 pid

杀死进程

猜你喜欢

转载自blog.csdn.net/hongweideng/article/details/78424866