您的位置:首页 > 运维架构 > Shell

shell脚本同一时间只能有一个在运行

2013-03-14 23:36 225 查看
#!/bin/bash

me=`basename $0`
pidfile=/var/run/$me.pid

mycode()
{
touch $pidfile
echo $$ > $pidfile
sleep 10
}
myexit()
{
rm -f $pidfile
exit 0
}

trap 'myexit' 2

if test -e $pidfile
then
kill -0 `cat $pidfile` >/dev/null 2>&1
if [ $? -eq 0 ]; then
echo "Another instance is running , `cat $pidfile`"
exit 1
else
rm -f $pidfile
mycode
fi
else
mycode
fi

myexit
阅读(810) | 评论(1) | 转发(0) |

0
上一篇:articles

下一篇:使用getopts获取命令行参数

相关热门文章

如何调整性生态做个性爱高人...

如何调整性生态做个性爱高人...

如何调整性生态做个性爱高人...

欢迎pyzrq在ChinaUnix博客安家...

如何调整性生态做个性爱高人...

linux 常见服务端口

什么是shell

linux socket的bug??

linux的线程是否受到了保护?...

一个适用于windows和linux的抓...

制作jffs2文件系统

make命令详解

nagios 进程突然增多一个...

第七章 进程调度

ubuntu安装tftp服务器

给主人留下些什么吧!~~



chinaunix网友2006-06-27 15:40:37
我使用了fuser scriptfile 这样能看到操作运行脚本的ID 起来时发现有脚本在运行退出就可以了

回复 | 举报

评论热议
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: