免费注册 查看新帖 |

Chinaunix

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

请教高手:判断本脚本是否已经有实例在运行? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2004-10-11 10:36 |只看该作者 |倒序浏览
#!/bin/sh
##判断该shell是否正在执行
Usage(){
        echo "Usage():\
                        \n\t  `basename $0`"
}

if [ $# -ne 0 ];
then
        Usage
        echo "error:parameter number<>0"
        exit 1       
fi
PG=`basename $0`

PN=`ps -ef | grep "$PG" | grep -v 'grep' | wc -l`

echo "$PN"

#如果没有重复实例,正常执行
if [ $PN -eq 1 ]
then
        echo startup now!
#如果已经有个实例在运行,退出本实例
else
        echo already startup!
        exit 1;
fi

sleep 60



脚本内容如上,在AIX 和HP-UNIX都出现grep wc出来的数字$PN经常在变
按道理:第一次运行,PN=2(有时候=1??),在60秒以内,再次运行本脚本PN应该等于3,为何第一次运行的时候不一定=2,60秒内再次运行PN也不一定等于3,数字在变化
请高手指点原因

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
2 [报告]
发表于 2004-10-11 11:30 |只看该作者

请教高手:判断本脚本是否已经有实例在运行?

这段脚本设计思路本身就有问题

论坛徽章:
0
3 [报告]
发表于 2004-10-11 11:53 |只看该作者

请教高手:判断本脚本是否已经有实例在运行?

请给出一个没有问题的啊

论坛徽章:
0
4 [报告]
发表于 2004-10-11 11:54 |只看该作者

请教高手:判断本脚本是否已经有实例在运行?

pgrep

论坛徽章:
0
5 [报告]
发表于 2004-10-11 17:33 |只看该作者

请教高手:判断本脚本是否已经有实例在运行?

有没有人知道啊

论坛徽章:
0
6 [报告]
发表于 2004-10-11 17:57 |只看该作者

请教高手:判断本脚本是否已经有实例在运行?

PN=`ps -ef | grep "$PG" | grep -v 'grep' | wc -l`
以上这段有问题,如:当在路径中有$PG时会发生误差

ps -ef|awk '{print $8}'|sed -e 's/.*\/\(.*\)$/\1/' -e '/^CMD$/d' -e '/^ps$/d'|grep "$PG"|wc -l

论坛徽章:
0
7 [报告]
发表于 2004-10-11 18:02 |只看该作者

请教高手:判断本脚本是否已经有实例在运行?

ps -ef|awk '{print $8}'|sed -e '/^$/d' -e '1d' -e '$d' -e 's/.*\/\(.*\)$/\1/'|grep "$PG"|wc -l

论坛徽章:
0
8 [报告]
发表于 2004-10-11 18:05 |只看该作者

请教高手:判断本脚本是否已经有实例在运行?

上面的优点问题,应为这个:

ps -ef|awk '{print $8}'|sed -e '1d' -e '$d' -e 's/.*\/\(.*\)$/\1/'|grep '^'$PG'$'|wc -l

论坛徽章:
0
9 [报告]
发表于 2004-10-11 18:22 |只看该作者

请教高手:判断本脚本是否已经有实例在运行?

这个更对:
ps -ef|awk '{print $8}'|sed -e '1d' -e '$d'|grep '^'$PG'$'|wc -l

论坛徽章:
0
10 [报告]
发表于 2004-10-11 19:45 |只看该作者

请教高手:判断本脚本是否已经有实例在运行?

多谢梦蓝回答,但是你写得你测过吗?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP