一个关于grep 取值的问题
时间:2011-03-15
来源:互联网
想在一个脚本里实现这个功能:
检测一个指定的进程,如果查出来值不等于0,则说明进程存在,KILL,如果KILL不掉,则发邮件通知。
我用grep 的时候发现,即使进程不存在了,但是用ps aux|grep -c 进程名 的时候还会显示1个进程。
没有终止ntp之前:
# ps aux|grep ntp
root 847 0.0 0.0 61188 724 pts/1 S+ 10:38 0:00 grep ntp
ntp 3521 0.0 0.1 19188 4888 ? SLs Feb22 0:00 ntpd -u ntp:ntp -p /var/run/ntpd.pid -g
[root@host smallfish]# ps aux|grep -c ntp
2
终止ntp之后
# service ntpd stop
Shutting down ntpd: [ OK ]
[root@host smallfish]# ps aux|grep -c ntp
1
用什么参数能让我终止进程之后,在用ps aux|grep ntp的时候显示0?不然我脚本里判断的时候,如果不是0就认为这个进程还存在的。
检测一个指定的进程,如果查出来值不等于0,则说明进程存在,KILL,如果KILL不掉,则发邮件通知。
我用grep 的时候发现,即使进程不存在了,但是用ps aux|grep -c 进程名 的时候还会显示1个进程。
没有终止ntp之前:
# ps aux|grep ntp
root 847 0.0 0.0 61188 724 pts/1 S+ 10:38 0:00 grep ntp
ntp 3521 0.0 0.1 19188 4888 ? SLs Feb22 0:00 ntpd -u ntp:ntp -p /var/run/ntpd.pid -g
[root@host smallfish]# ps aux|grep -c ntp
2
终止ntp之后
# service ntpd stop
Shutting down ntpd: [ OK ]
[root@host smallfish]# ps aux|grep -c ntp
1
用什么参数能让我终止进程之后,在用ps aux|grep ntp的时候显示0?不然我脚本里判断的时候,如果不是0就认为这个进程还存在的。
作者: smallfish 发布时间: 2011-03-15
回复 smallfish
ps aux|grep -v "grep "|grep -c ntp
ps aux|grep -v "grep "|grep -c ntp
作者: wtuter 发布时间: 2011-03-15
因为 grep 也是一个进程 ,所以即使没有该进程, 也能打印出信息
作者: chenbin200818 发布时间: 2011-03-15
利用[]或者grep -v:
一下两种效果相同,建议用第一种:
复制代码
一下两种效果相同,建议用第一种:
- [tdlteman@hzling11:~]-No.105->$ ps -ef | grep -c [n]tp
- 1
- [tdlteman@hzling11:~]-No.106->$ ps -ef | grep -v grep | grep -c ntp
- 1
作者: xiaopan3322 发布时间: 2011-03-15
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28