有些脚本,可能防止重复启动,处于后台daemon状态,用锁文件来监控保持daemon状态
#!/bin/bash
#指定锁文件=========
lockfile=/test/lock.txt
#检测锁文件,避免重复启动========
function check()
{
#==============kill -0不发送信号,判断进程是否存在,返回1/0
if [ -e $lockfile ] && kill -0 cat ${lockfile};
then
echo “process is already running!!”
exit
fi
trap “rm -f ${lockfile};exit” INT TERM EXIT
}
#======监控lockfile=
monitor_lockfile()
{
if [ ! -e $lockfile ]
then
echo “process has stoped,because lockfile has been delete”
exit
fi
}
#=======main方法
function work()
{
check
echo $$ > ${lockfile}
while true
do
monitor_lockfile
echo “working !! ===>”
sleep 2
done
}
work
本文介绍了一个使用Bash脚本实现的守护进程(daemon)示例,该守护进程通过创建锁文件(lockfile)来防止重复启动,并定期检查锁文件以确保进程正常运行。文章详细展示了如何使用Bash内置命令和函数实现这一机制。
1134

被折叠的 条评论
为什么被折叠?



