2017-05-17 4 views
1

Was wäre die beste Vorgehensweise - wenn es welche gibt - mehrere Konfigurationsdateien zu analysieren?Best Practice zum Analysieren mehrerer Konfigurationsdateien

Ich möchte die MySQL-Server-Konfiguration analysieren und auch die Konfiguration erneut schreiben.

Die Konfiguration ermöglicht wie mehrere Zeilen zu erteilen:

!includedir /etc/mysql.d/ 

So das Interessante ist, dass einige Konfiguration in der Hauptdatei angeordnet sein können, aber andere können in einer Unterdatei befinden.

Ich denke, pyparsing funktioniert nur auf eine einzige Datei oder eine Inhaltszeichenfolge.

So wahrscheinlich muss ich zuerst alle Dateien lesen und restrukturiert vielleicht den Inhalt wie Header für die verschiedenen Dateien hinzufügen ...

====main file==== 
[mysql] 
.... 

!includedir /etc/mysql.d/ 

====/etc/mysql.d/my.cnf==== 
[client] 
..... 

ich nur einen pyparsing Anruf hätte. Dann könnte ich alles in ein großes Datenobjekt analysieren, die Dateibereiche gruppieren und die Dateinamen als Schlüssel haben. Auf diese Weise könnte ich auch die Daten zurück auf den Datenträger schreiben ...

Die andere Möglichkeit wäre, die Hauptdatei zu analysieren und programmgesteuert alle anderen Dateien zu analysieren, die in der Hauptdatei gefunden wurden. So hätte ich mehrere Pyapsanrufe.

Was denkst du?

Antwort

1

Fügen Sie in Ihrem PIP-Code eine Analyseaktion an den Ausdruck an, der den include -Anweisungen entspricht. Parsen Sie den Inhalt der referenzierten Dateien oder des Verzeichnisses der Dateien, und vereinigen Sie diese Ergebnisse dann mit der aktuellen Analyseausgabe. Die Parse-Aktion würde die aufeinander folgenden Aufrufe an parseString machen, Ihr Code würde nur einen einzelnen Aufruf vornehmen.

+0

Vielen Dank für Ihre Hinweise. Ich werde später darauf eingehen und entsprechend reagieren! – cornelinux

Verwandte Themen