Linux 精准获取进程pid

发布时间:2016-01-05 10:12:19 阅读:865次

转:http://lionbule.iteye.com/blog/713585

kill -9 `pidof 进程名`

[root@web_test test]# ps -ef|grep nginx
root      1155     1  0 Mar16 ?        00:00:00 nginx: master process nginx
www       1157  1155  0 Mar16 ?        00:00:04 nginx: worker process
www       1158  1155  0 Mar16 ?        00:00:02 nginx: worker process
www       1159  1155  0 Mar16 ?        00:00:04 nginx: worker process
www       1160  1155  0 Mar16 ?        00:00:05 nginx: worker process
root     19451 19433  0 17:17 pts/4    00:00:00 grep nginx
[root@web_test test]# pidof nginx
1160 1159 1158 1157 1155

[root@web_test test]# pstree -p 1155
nginx(1155)─┬─nginx(1157)
            ├─nginx(1158)
            ├─nginx(1159)
            └─nginx(1160)

如果想在脚本里只获取PID,那么可以用如下脚本。目前收集两种方法: 

方法一

$ps x|grep xxx  |awk '{print $1}' 

e.g.

      ps x|grep java |awk '{print $1}'

注释:

      1、xxx为执行的命令名称

      2、举个例子,获取当前用户下的java进程 【pid】

           [admin@vm168a ~]$ ps x|grep java |awk '{print $1}'
           16920

      3、用到三个命令,ps、grep、awk。 

方法二(推荐) 

$pgrep xxx  

e.g.

     pgrep java


如有问题,可以QQ搜索群1028468525加入群聊,欢迎一起研究技术

支付宝 微信

有疑问联系站长,请联系QQ:QQ咨询

转载请注明:Linux 精准获取进程pid 出自老鄢博客 | 欢迎分享