Я ищу лучший способ проанализировать данные IP и подсети от ifocnfig
.python regex для анализа вывода ifconfig из разных локалей
Я не хочу искать его на основе inet addr
или Mask:
, потому что, когда применяется другой языковой стандарт, регулярное выражение выходит из строя при изменении строк.
Вот образец текста:
eth0 Link encap:Ethernet HWaddr 00:18:F3:BE:18:1E
inet addr:192.168.10.15 Bcast:192.168.10.255 Mask:255.255.255.0
inet6 addr: fe80::218:f3ff:febe:181e/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:39456 errors:0 dropped:0 overruns:0 frame:0
TX packets:45730 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:25457904 (24.2 Mb) TX bytes:6540945 (6.2 Mb)
Interrupt:20
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:182 errors:0 dropped:0 overruns:0 frame:0
TX packets:182 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:12812 (12.5 Kb) TX bytes:12812 (12.5 Kb)
Я попробовал несколько способов для делать это, например, используя \d+\.\d+\.\d+\.\d+
, но не смогли найти наилучший способ. Нужна помощь по этому поводу.
разместить свои попытки. –
@ также разместите свой файл, в котором вы хотите найти –
Я пробовал следующее: mac = re.search ('\ w \ w: \ w \ w:. + \ N', ifconfig) parsedMac = mac.group() print (parsedMac) Но это сработало только для Mac, не работает для маски ip и подсети – Sandy