shell flock实现单例模式执行任务
场景
我们需要定时执行一个任务,并且保证每次执行时都需要上一次已经执行完了,即保证同一时间只有一个在运行
示例
假设需要执行的脚本是:ping_and_mtr.sh
创建一个新的脚本来运行你的逻辑脚本:touch /root/run_ping_and_mtr.sh
run_ping_and_mtr.sh:文章来源:https://www.toymoban.com/news/detail-692375.html
#!/bin/bash
# 为 ping_and_mtr.sh 创建一个锁文件
lock_file="/root/ping_and_mtr.lock"
while true
do
# 使用 flock 确保在同一时间只有一个脚本实例在运行
flock -n $lock_file -c "/root/ping_and_mtr.sh"
# 每 10 秒运行一次脚本
sleep 10
done
设置后台一直运行:文章来源地址https://www.toymoban.com/news/detail-692375.html
赋予执行权限:chmod +x /root/run_ping_and_mtr.sh
后台一直运行:nohup /root/run_ping_and_mtr.sh &
到了这里,关于【博客702】shell flock实现单例模式执行任务的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!