为了账号安全,请及时绑定邮箱和手机立即绑定

从频繁更新的文件中读取

从频繁更新的文件中读取

蝴蝶不菲 2019-09-21 11:21:44
我目前正在Linux系统上以python编写程序。目的是在发现特定字符串后读取日志文件并执行bash命令。日志文件正在被另一个程序不断写入。我的问题是:如果我使用open()方法打开文件,我的Python文件对象是否会随着其他程序写入实际文件而更新,还是我必须按一定的时间间隔重新打开文件?谢谢吉姆更新:感谢到目前为止的答案。我也许应该提到Java EE应用程序正在写入文件,因此我无法控制何时将数据写入文件。我目前有一个程序,该程序每10秒重新打开一次文件,并尝试从文件的最后读取位置读取字节。目前,它只是打印出返回的字符串。我希望不需要重新打开文件,但read命令将以某种方式可以访问Java应用程序写入文件的数据。#!/usr/bin/pythonimport timefileBytePos = 0while True:    inFile = open('./server.log','r')    inFile.seek(fileBytePos)    data = inFile.read()    print data    fileBytePos = inFile.tell()    print fileBytePos    inFile.close()    time.sleep(10)感谢您提供有关pyinotify和generators的技巧。我将看看这些以获得更好的解决方案。
查看完整描述

3 回答

  • 3 回答
  • 0 关注
  • 822 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信