繁体   English   中英

从日志文件读取最后一行

[英]Reading last line from a log file

我正在树莓派中使用python开发项目。
我有一个持续记录时间的日志文件,并在特定的时间向其发送命令(热水器的Shed命令)。

我正在尝试编写一个代码,该代码读取该日志文件中的最后一行,并在发送了棚命令时关闭了GPIO X(当最后一行只是一个时间戳时,则什么也不做)。

这是一个清楚的算法:
-读取日志文件
-如果删除了最后一行命令:关闭GPIO X
---- else:什么都不做

我尝试了一种方法,但它不读取最后一行,它读取每一行并在到达最后一行时返回到第一行。 我只想阅读最后一行。

Here is a code I tried:
import time 
fileHandle = open ('UCM.log') 
lineList = fileHandle.readlines() 
fileHandle.close() 

while True: 
    #for line in (open(UCM.log).readlines()): 
    if " Sending Application message: Shed" in lineList[len(lineList)-1]: 
        time.sleep 
        print 'Shed!'

显然,您的问题是从头读取文件。 您可以检查以下问题的答案: 使用python以相反的顺序读取文件

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM