bash flock:如果无法获取锁定则退出
发布时间:2020-12-15 19:09:33 所属栏目:安全 来源:网络整理
导读:以下锁定机制用于防止cron作业并发运行: #!/bin/bashecho "Before critical section"( flock -e 200 echo "In critical section" sleep 5) 200/tmp/blah.lockfileecho "After critical section" 一起运行两个实例时,稍后等待,直到第一个完成,然后运行。
以下锁定机制用于防止cron作业并发运行:
#!/bin/bash echo "Before critical section" ( flock -e 200 echo "In critical section" sleep 5 ) 200>/tmp/blah.lockfile echo "After critical section" 一起运行两个实例时,稍后等待,直到第一个完成,然后运行。这可能导致等待运行的脚本积压。 如何更改此脚本,以便如果flock无法获取锁定,则会终止该脚本?我试过没有成功。 flock -n -e 200 || exit 1 flock -n通过返回失败代码(除了零之外)告诉您失败。您可以在脚本的顶部设置-e,使其在看到任何未选中的错误时退出。 根据您的应用程序,您可能希望退出0以指示无法获取锁定时的成功。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |