如何观看文件以进行读取?

问题描述

使用 Python,我们如何监控特定文件是否被另一个进程读取?

特别要求 Ubuntu,但跨平台解决方案将是理想的。

解决方法

最简单的方法是在循环中比较文件访问日期。您可以使用 link 作为示例

# get the the stat_result object
fileStatsObj = os.stat ( filePath )
# Get last access time
accessTime = time.ctime ( fileStatsObj [ stat.ST_ATIME ] )

编辑:我想指出,由于潜在的竞争条件,这种方法可能不利于精确访问计数。最可靠的方法是使用只读模式强制进程在单独的文件中增加访问计数。