确保在给定时间只运行一个shell脚本实例的快速而简单的方法是什么?
确保只有给定脚本的一个实例运行的最简单/最好的方法是什么 - 假设它是Linux上的Bash?
目前我正在做:
ps -C script.name.sh > /dev/null 2>&1 || ./script.name.sh
Run Code Online (Sandbox Code Playgroud)
但它有几个问题:
-C 仅检查进程名称的前14个字符当然,我可以编写自己的pidfile处理,但我觉得应该有一个简单的方法来实现它.
我已经设置了一个cronjob来正确备份我的文件夹,我很自豪.但是,我通过查看备份的结果发现,我的备份脚本已被Crontab多次调用,导致同时运行多个备份.
有没有什么办法可以确保某个shell脚本在同一个脚本已经执行时不能运行?