[log@tcbj3-qqfpo01 qqrpt-consumer]$ ps aux | grep $WarName
log 4706 0.4 2.4 16107488 807916 ? Sl Jul16 182:14 /usr/local/jdk/bin/java -jar /atmd/qqrpt-consumer/qqrpt-topic-consumer-0.0.1-SNAPSHOT.jar
log 20401 0.0 0.0 112840 1252 pts/6 S+ 15:43 0:00 grep --color=auto qqrpt-topic-consumer-0.0.1-SNAPSHOT.jar
进程process
a 显示所有程序
u 以用户为主的格式显示,第一个值是用户
x 显示所有程序,不以终端机来区分
s 程序信号的格式显示
[log@tcbj3-qqfpo01 qqrpt-consumer]$ ps sx | grep $WarName|grep -v grep
1001 4706 0000000000000000 0000000000000000 0000000000000002 2000000181005ccd Sl ? 182:15 /usr/local/jdk/bin/java -jar /atmd/qqrpt-consumer/qqrpt-topic-consumer-0.0.1-SNAPSHOT.jar
[log@tcbj3-qqfpo01 qqrpt-consumer]$ ps lax | grep $WarName|grep -v grep
0 1001 4706 1 20 0 16107488 807928 futex_ Sl ? 182:15 /usr/local/jdk/bin/java -jar /atmd/qqrpt-consumer/qqrpt-topic-consumer-0.0.1-SNAPSHOT.jar
[log@tcbj3-qqfpo01 qqrpt-consumer]$
上面的返回值,都各自代表什么含义?
还是以aux参数返回的为准
要获取user,pid的值
[log@tcbj3-qqfpo01 qqrpt-consumer]$ ps aux | grep $WarName | grep -v grep | awk '{ print $1 }'
log
[log@tcbj3-qqfpo01 qqrpt-consumer]$ ps aux | grep $WarName | grep -v grep | awk '{ print $2 }'
4706
注意第8列STAT 当前程序的状态:
D 无法中断的休眠状态(通常 IO 的进程);
R 正在运行可中在队列中可过行的;
S 处于休眠状态;
T 停止或被追踪;
W 进入内存交换 (从内核2.6开始无效);
X 死掉的进程 (基本很少見);
Z 僵尸进程;
< 优先级高的进程
N 优先级较低的进程
L 有些页被锁进内存;
s 进程的领导者(在它之下有子进程);
l 多进程的(使用 CLONE_THREAD, 类似 NPTL pthreads);
+ 位于后台的进程组;