使用grep命令过滤进程时,如何消除grep本身进程的影响

在Linux环境中,使用grep过滤进程时,会发现grep自身进程也被计入统计。本文通过实例解析如何消除grep影响,包括使用grep的-v参数,pgrep命令,以及正则表达式技巧,确保准确过滤目标进程。
摘要由CSDN通过智能技术生成

使用grep命令过滤进程时,如何消除grep本身进程的影响

你是否也遇到了跟我同样的问题: 使用 grep 命令过滤并统计一个进程出现的次数,如下所示:

[root@lb01~ ]#ps -ef | grep nginx
root 20239 1 0 Jul06 ? 00:00:00 nginx: master process /usr/sbin/nginx -c /etc/nginx/nginx.conf
nginx 20240 20239 0 Jul06 ? 00:00:00 nginx: worker process
root 22343 22252 0 17:55 pts/0 00:00:00 grep --color=auto nginx

此时我们看到的“貌似”是 nginx 在系统中有3个进程,然后统计一下:

[root@lb01~ ]#ps -ef | grep nginx |wc -l
3

“应该是”3个进程没毛病啊?我一开始的确是这么认为的……
然后我就把这条命令放入脚本中了,截个图吧:
简单的脚本
一个简单的不完善的脚本,后面又改动了,大神憋说话~
当 nginx 正常有 “3” 个进程时,系统不应理会这条命令才对,可是我一执行脚本,我的 keepalived 服务就被系统无情 stop了 !!!
那我肯定不服啊对不对!必须找出问题所在!
检查脚本,觉得没什么问题。重启服务再执行脚本,来来回回几次毒打之后,i 服了系统了~不过也让我发现了一个问题:

[root@lb01~ ]#ps -ef |grep nginx |wc -l
3
[root@lb01~ ]#info=`ps -ef |grep nginx |wc -l`

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值