我正在尝试使用一个文件(csv,json,txt,还没有决定格式),我可以删除几行数据。一个python脚本将在cron上每5分钟运行一次并检查文件如果有任何新内容,如果有,请处理它并在处理时删除每一行。
我正在尝试阻止我打开文件的情况,进行一些更改并在进程到来时保存它,抓住数据并清空文件,但我的保存将其写回。
我认为保证安全的唯一方法是让它处理文件夹并只查找新文件,所有更改都将删除到新文件中。所以永远不会有发生这种情况的风险。
有更好的方法,还是这是最好的方法?
答案 0 :(得分:1)
检查this answer to see if the file is already open,如果是,请再等5分钟,或者在内部睡眠,然后每10秒再试一次,直到它工作,但不超过4分钟,例如:
for i in range(attempts):
if not fileInUse():
processFile()
else:
time.sleep(10)
答案 1 :(得分:0)
您可以使用以下步骤:
lsof
。