使用
sed -ne '/13:40:47/,/13:41:48/p' ABCD.log | wc -l
现在就在终端上获取结果。
示例日志格式:
10.0.0.0 - - [29/Apr/2020:00:00:54 -0400]
10.0.0.0 - - [29/Apr/2020:00:00:59 -0400]
10.0.0.0 - - [29/Apr/2020:00:01:03 -0400]
10.0.0.0 - - [29/Apr/2020:00:01:05 -0400]
10.0.0.0 - - [29/Apr/2020:00:01:09 -0400]
10.0.0.0 - - [29/Apr/2020:00:01:11 -0400]
10.0.0.0 - - [29/Apr/2020:00:01:18 -0400]
10.0.0.0 - - [29/Apr/2020:00:01:24 -0400]
10.0.0.0 - - [29/Apr/2020:00:01:33 -0400]
如果在10.0.0.0 - - [29/Apr/2020:00:01:05 -0400]
和10.0.0.0 - - [29/Apr/2020:00:01:24 -0400]
之间搜索,我希望得到如下输出。
10.0.0.0 - - [29/Apr/2020:00:01:09 -0400]
10.0.0.0 - - [29/Apr/2020:00:01:11 -0400]
10.0.0.0 - - [29/Apr/2020:00:01:18 -0400]
只需读取文件的行,并返回两行匹配的行(开始和结束(。请参阅文件I/O和循环。
此逻辑不起作用:
start_time = input("Enter start time: ")
end_time = input("Enter end time: ")
def between(l1,start_time,end_time):
l2 = []
for i in l1:
if(i > start_time and i < end_time):
l2.append(i)
return l2