136得票14回答
如何确保只有一个 Bash 脚本实例在运行?

在Linux Bash中,确保只有一个给定脚本实例运行的最简单/最佳方法是什么? 目前我正在执行以下操作:ps -C script.name.sh > /dev/null 2>&1 || ./script.name.sh 不过,它有几个问题: 它将检查放在脚本外面。 ...

40得票8回答
Mac OS X中与Linux flock(1)命令相当的命令是什么?

在Mac OS X上是否有一个flock命令来管理文件锁定? http://linux.die.net/man/1/flock

39得票1回答
Bash flock:为什么是200?

关于这个线程:bash flock: exit if can't acquire lock 如果有人能解释一下'200'代表什么,我会很感激。 我已经阅读了flock的相关内容,似乎200是指定一个文件描述符,但是这个数字有什么好处呢?

35得票3回答
flock(): 如何在无竞态条件下删除锁定的文件?

我正在使用flock()实现进程间的命名互斥锁(即某些进程可以决定在“some_name”上持有锁,这是通过在临时目录中锁定名为“some_name”的文件来实现的): lockfile = "/tmp/some_name.lock"; fd = open(lockfile, O_CREAT...

28得票1回答
Linux flock,如何“仅”锁定文件?

在Bash中,我试图创建一个函数getLock用于不同的锁名称。function getLock { getLock_FILE="${1}" getLock_OP="${2}" case "${getLock_OP}" in "LOCK_UN") ...

20得票4回答
在Linux中独占性地打开设备文件

有哪些方法可以专门打开设备文件(比如,显示帧缓冲区)? [信息:我已经知道flock()等函数,只有当其他应用程序也在使用时才有效果(换句话说:如果已经锁定,则open()将成功但flock()将失败)--> 但是从open()检索到的设备句柄仍然可以用于写入显示器..] 如果我想要强制对设备...

19得票3回答
使用cron定时运行Python脚本,但仅在脚本未运行时才执行

我需要每分钟运行一个Python脚本(job.py)。如果该脚本已经在运行,它不能被再次启动。脚本的执行时间可能在10秒到数小时之间。 因此,我将以下内容添加到我的crontab中:* * * * * root cd /home/lorenzo/cron && python ...

18得票1回答
Python的lockf和flock行为

我看过足够多关于flock/lockf/fcntl之间区别的stackoverflow帖子,但我无法回答以下观察问题:>>> import fcntl >>> a = open('/tmp/locktest', 'w') >>> b = o...

18得票2回答
错误情况下释放flock?

想象一下以下的 Perl 代码(这里是伪代码):successfully acquired flock for FILEHANDLER # line 1 some error or maybe simply a call to exit() # line 2 close...

17得票2回答
Bash flock: 如果无法获取锁则退出

以下锁定机制用于防止作业同时运行:#!/bin/bash echo "Before critical section" ( flock -e 200 echo "In critical section" sleep 5 ) 200>/tmp/blah.lockf...