Для моего скрипта мне нужно использовать Python 2.6 только со стандартной библиотекой.Я пытаюсь написать сценарий, который просматривает каталог журналов, для которого определено условие, совпадающее только с журналами с соответствующей отметкой времени.Временная метка, которую я использую, получена из имени файла.Я не хочу использовать временные метки ОС, потому что иногда файлы копируются в другой каталог, чтобы предотвратить их перезапись, и это изменяет время изменения файла.
Новый файл создается каждые 200 МБ.Временная метка в имени файла - это время, когда файл был создан, и представляет самую старую запись журнала в файле.
import datetime
# One event might span multiple log files.
call_start = datetime.datetime(2018, 5, 15, 5, 25, 9)
call_stop = datetime.datetime(2018, 5, 15, 5, 37, 38)
# Timestamp values of file generated from file's naming convention
t1 = datetime.datetime(2018, 5, 15, 4, 48, 16)
t2 = datetime.datetime(2018, 5, 15, 5, 3, 53)
t3 = datetime.datetime(2018, 5, 15, 5, 19, 14)
t4 = datetime.datetime(2018, 5, 15, 5, 35)
t5 = datetime.datetime(2018, 5, 15, 5, 49, 19)
file_times = [t1, t2, t3, t4, t5]
matching_times = []
for ftime in file_times:
# Logic I can't figure out
if scratches_head:
matching_times.append(ftime)
# I would expect the matching_times list to contain t3 and t4
Редактировать
Уточнение из comments :
t3
- это файл, созданный в 5:19:14am
.call_start
- первая запись, которую я бы увидел в журнале.Это начинается в 5:25:09am
.Так как t4
не был создан до 5:35:00am
, call_start
должен быть в t3
.call_stop
- последняя запись в журнале, которую я хочу найти.Я был бы в t4
, потому что t5
был создан в 5:49:19am
.