使用 python 拆分部分 DHCP 日志并存储到变量中

Splitting parts of a DHCP log and storing into a variable using python

如何使用 python 从 DHCP 日志文件中拆分简单行的一部分 例如

Dec 15 09:57:17 6con-dhcp-01 dhcpd: DHCPREQUEST for 103.26.222.234 from 14:91:82:ab:4d:32 via eth1

我想将上面的行拆分成不同的部分并将其存储在一个变量中

Date = Dec 15 
Time = 09:57:17
IP Address = 103.26.222.234
Mac Address = 14:91:82:ab:4d:32 

我已经尝试使用 .split() 但无济于事。

var = Dec 15 09:57:17 6con-dhcp-01 dhcpd: DHCPREQUEST for 103.26.222.234 from 14:91:82:ab:4d:32 via eth1

datas = var.split()


for data in datas:
print(data)

对于任何日志文件的精确数据,您应该首先考虑文本模式。然后分割需要的数据。最后,使用正则表达式工具提取信息。

我找到了一种拆分它们并将它们存储在变量中的方法

import re
splitted = re.split(' ', var)
print splitted 

输出将采用以下格式:

['Dec', '15', '09:57:27', '6con-dhcp-01', 'dhcpd:', 'DHCPREQUEST', 'for', '132.147.83.212', 'from', '44:d9:e7:41:ee:77', 'via', 'eth1\n']

使用下面的代码我可以将分离的部分存储到变量中

Monthdatetime = splitted[0] + ' ' + splitted[1] + ' ' + splitted[2]
print Monthdatetime

输出将是:

Dec 15 09:57:27