我有一个记录日志的日志文件:
我想仅保留过去24小时的日志。记录以2个样本/秒继续24 * 7,即172800个样本/ 24小时。 从https://stackoverflow.com/a/28057753/5954600我发现了Python代码,它可以根据我的要求进行修改:
import datetime
# for testing I'm using "seconds=60", which will be modified to "hours=24"
before_24h = str(datetime.datetime.now() - datetime.timedelta(seconds=60))
file = open("meter.log","r+")
logs = file.readlines()
file.seek(0)
for each_log in logs:
if each_log > before_24h:
file.write(each_log)
file.truncate()
file.close()
此代码在24小时之前删除所有日志,但将172800行写入文件将需要一些时间。所以我正在寻找有效的方法,如果有的话。
提前致谢。