免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 6242 | 回复: 6
打印 上一主题 下一主题

怎么用perl 察看linux 进程是否存活 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-12-23 16:33 |只看该作者 |倒序浏览
10可用积分
我现在 需要这样一个程式  用perl 判断一个linux 系统进程是否在运行  如果在运行  就等10秒 然后再判断  (反复判断)  直到进程停止 才运行下面的程式。


until (grep(进程名,@a)>0){

sleep 10;

@a=`ps -e| grep 进程名`;}



这样对吗?

论坛徽章:
0
2 [报告]
发表于 2009-12-23 16:37 |只看该作者

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
3 [报告]
发表于 2009-12-23 16:39 |只看该作者
man pidof

论坛徽章:
1
狮子座
日期:2013-12-16 16:09:24
4 [报告]
发表于 2009-12-23 16:43 |只看该作者
sleep 10 until (`ps -ef| grep xxxxx| grep -v grep` eq "")

论坛徽章:
0
5 [报告]
发表于 2009-12-23 21:24 |只看该作者
ps -e| grep 进程名

这样会多一列  要么采用ttcn_cu 的ps -ef| grep xxxxx| grep -v grep

要么判断得到的行数 ps -e| grep 进程名 | wc -l >1

论坛徽章:
0
6 [报告]
发表于 2009-12-24 10:15 |只看该作者
发送kill 0

论坛徽章:
0
7 [报告]
发表于 2009-12-24 10:25 |只看该作者
my $pid=`pidof -sx 进程名`;
while (kill 0, $pid) {
    $pid=`pidof -sx 进程名`;            
    sleep 10;
}

[ 本帖最后由 lth0721 于 2009-12-24 10:56 编辑 ]
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP