我如何检查一个文件是否被其他应用程序使用?

我需要处理一个video文件,我需要在打开文件之前完成文件。 所以我需要在处理之前检查文件是否被打开,但是被另一个进程打开。 任何想法如何检查? 我正在使用Linux。

Solutions Collecting From Web of "我如何检查一个文件是否被其他应用程序使用?"

没有任何额外的宝石,一个稍微浪费的方式可能是:

if %x[lsof -F n].split("\n").grep(/yourfilename/).empty? # all clear else end 

要么

 if system %Q[lsof #{filename}] # still open.. else # all clear end 

或者,忽略我的黑客攻击,并使用一个创业板: https : //github.com/jordansissel/fosl