Ich möchte bestimmte Mac-Adresse aus einer Protokolldatei extrahieren, die in verschiedenen Formaten angezeigt werden kann.Python - Finden Sie eine bestimmte Mac-Adresse in einer Protokolldatei
Zum Beispiel auf diesen drei Linien:
16. Juni 10.24.28 (2248) login: cli 88-c9-d0-fd-13-65 über TLS-Tunnel)
16. Juni 10.24.35 (2258) login: cli f8: a9: d0: 72: 0a: dd über TLS-Tunnel)
16. Juni 10.24.44 (2273) login: cli 485a.3f12.a35a über TLS-Tunnel)
mit dieser Regex:
([[:xdigit:]]{2}[:.-]?){5}[[:xdigit:]]{2}
Ich kann alle die MAC-Adresse herausbringen, in dem Linux-Befehl weniger.
Angenommen zu suchen 48: 5a: 3f: 12: a3: 5a, wie verwende ich die gleiche Syntax mit einer bestimmten MAC-Adresse in Python?
Ich habe versucht, so etwas zu schreiben:
regex = re.compile(r'([[:xdigit:]]{2}[:.-]?){5}[[:xdigit:]]{2}')
for line in file:
match = regex.search(line)
aber offensichtlich funktioniert es nicht.
Haben Sie eine bestimmte MAC-Adresse in einer Datei finden wollen? Wenn ja, würde 'cat exampleFile | grep exampleMACAddress' funktioniert für Sie? – Paradox
Wenn ich das richtig verstehe, suchst du '48 [: .-]? 5a [: .-]? 3f [: .-]? 12 [: .-]? A3 [: .-]? 5a' ? Wenn die Antwort ja lautet, sollten Sie sich einige Regex-Tutorials ansehen. –
Ich suche ** 48: 5a: 3f: 12: a3: 5a ** aber es kann im Format ** 485a.3f12.a35a ** oder ** 48-5a-3f-12-a3- erscheinen 5a ** – bonzix