Я хочу преобразовать правила конфигурации статического маршрута, хранящиеся в / etc / sysconfig / network-scripts / route- interface файл в Linux из этого формата
ADDRESS0=X.X.X.X
NETMASK0=X.X.X.X
GATEWAY0=X.X.X.X
ADDRESS1=X.X.X.X
NETMASK1=X.X.X.X
GATEWAY1=X.X.X.X
до
X.X.X.X/X via X.X.X.X (i.e) IP/prefix via Gateway
X.X.X.X/X via X.X.X.X
с использованием Python.
Есть ли какая-либо библиотека для этого?
Я пробовал это следующим образом (пока не завершено):
import glob
import fileinput
import os,sys
files = glob.glob('./route-*')
if files:
for f in files:
if os.path.isfile(f):
listoflines = []
i = 0
for line in open(f):
flag = 0
if line.startswith("ADDRESS" + str(i)):
listoflines.append([])
listoflines[i].append(line.strip().split("=")[1])
flag = 1
elif line.startswith("NETMASK" + str(i)):
netmask = line.strip().split("=")[1]
prefix = sum([bin(int(n)).count("1") for n in netmask.split(".")])
listoflines[i][0] = listoflines[i][0] + "/" + str(prefix)
flag = 2
elif line.startswith("GATEWAY" + str(i)):
listoflines[i][2] = line.split("=")[1]
flag = 3
if flag == 3:
listoflines[i][1] = "via"
i += 1
print listoflines
Любой ввод для вышеуказанного кода приветствуется !!