Bash-Frage: Datei aus mehreren Dateien zusammensetzen
Hallo zusammen, mir wird meine fetchmailrc allmählich zu unübersichtlich, daher würde ich gerne diese Datei aus mehreren Dateien zusammensetzen, sinngemäß etwa so: defaults proto pop3 fetchall set postmaster "andre.tann" include fetchmailrc-firma1 include fetchmailrc-firma2 Geht das? Wenn ja, wie? -- Andre Tann -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Andre Tann schrieb:
Hallo zusammen,
mir wird meine fetchmailrc allmählich zu unübersichtlich, daher würde ich gerne diese Datei aus mehreren Dateien zusammensetzen, sinngemäß etwa so:
defaults proto pop3 fetchall set postmaster "andre.tann"
include fetchmailrc-firma1 include fetchmailrc-firma2
Geht das? Wenn ja, wie? Keine Ahnung aber wäre es eine Alternative fetchmail mit den jeweiligen Konfigurationen einzen aufzurufen fetchmail --config firma1 fetchmail --config firma2 usw. Vorteil aus meiner Sicht. Du könntest steuern welches Postfach wie häufig abgerufen wird und könntest einzelne Abrufe schnell mal deaktivieren wenn was klemmt.
-- i.A. Ralf Prengel Customer Care Manager Comline AG Hauert 8 D-44227 Dortmund/Germany Fon +49231 97575- 904 Fax +49231 97575- 905 EMail ralf.prengel@comline.de www.comline.de Vorstand Stephan Schilling,Erwin Leonhardi Aufsichtsrat Dr. Franz Schoser (Vorsitzender) HR Dortmund B 14570 USt.-ID-Nr. DE 124727422 -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Ralf Prengel, Donnerstag, 23. August 2007 10:41:
fetchmail --config firma1 fetchmail --config firma2
Jep, das ist ne gute Idee, danke. -- Andre Tann -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Andre Tann, Donnerstag, 23. August 2007 10:53:
fetchmail --config firma1 fetchmail --config firma2
Jep, das ist ne gute Idee, danke.
Oops, doch nicht so eine gute Idee: Denn ich würde gerne die ganzen einzelnen fetchmail-Einträge sortieren (also mit sort). Und das Problem ist dann, daß die Standard-Einträge wie defaults proto pop3 fetchall set postmaster "andre.tann" dann mitsortiert würden. Das wäre nicht der Fall, wenn ich in der fetchmailrc nur auf die einzelnen poll-Listen verweisen könnte. Ist nur ein kosmetisches Problem, aber trotzdem - wenn sichs lösen ließe, dann wäre es schön. -- Andre Tann -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Hallo Andre! Andre Tann wrote:
mir wird meine fetchmailrc allmählich zu unübersichtlich, daher würde ich gerne diese Datei aus mehreren Dateien zusammensetzen, sinngemäß etwa so:
defaults proto pop3 fetchall set postmaster "andre.tann"
include fetchmailrc-firma1 include fetchmailrc-firma2
Geht das? Wenn ja, wie?
fetchmailrc wird ja von fetchmail eingelesen und ausgewertet, hat also erstmal nichts mit bash zu tun. Und fetchmail sieht - jedenfalls nach der man page - kein sourcen von externen files vor. Wie wäre es damit: Pflege die fetchmail-Konfigurationen der einzelnen Firmen in separaten Dateien und lasse sie von einem Skript zusammensetzen. Dann kannst Du die Configs leicht pflegen und nach Änderungen lässt Du dir die fetchmailrc neu zusamenbauen. Etwa so: #!/bin/bash cat fetchmailrc-defaults > fetchmailrc sort fetchmailrc-firma1 >> fetchmailrc sort fetchmailrc-firma2 >> fetchmailrc etc. Oder Du rufst fetchmail über ein wrapper-script auf, dass vor jedem fetchmail-Start das config file so wie oben skizziert erzeugt. Joachim -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Hallo, Am Don, 23 Aug 2007, Andre Tann schrieb:
mir wird meine fetchmailrc allmählich zu unübersichtlich, daher würde ich gerne diese Datei aus mehreren Dateien zusammensetzen, sinngemäß etwa so:
defaults proto pop3 fetchall set postmaster "andre.tann"
include fetchmailrc-firma1 include fetchmailrc-firma2
Geht das? Wenn ja, wie?
Noch ne Idee: Einer der "klassischen" Präprozessoren wie m4 oder cpp. Für letzteren: ==== fetchmailrc.in ==== defaults proto pop3 fetchall set postmaster "andre.tann" #include <fetchmailrc-firma1> #include <fetchmailrc-firma2> ==== Die eingebundenen Dateien enthalten das übliche (und dürfen auch weitere includes enthalten). Generieren der eigentlichen fetchmailrc: cpp -I VERZ_MIT_DEN_WEITEREN_RCS fetchmailrc.in > fetchmailrc wobei man das natürlich noch in ein Makefile verpacken kann, das bei Bedarf die rc neu generiert. ==== Beispiel-Makefile ==== ### Verzeichnis mit weiteren rc-Dateien INCDIR := fetchmailrc.d/ ### -I Parameter für cpp (siehe Doku) INCLUDES := -I $(INCDIR) ### (generierte) Liste der eingebundenen Dateien / Abhängigkeiten DEPS := $(wildcard $(INCDIR)/fetchmailrc-firma[0-9]) all: fetchmailrc fetchmailrc: fetchmailrc.in $(DEPS) @cpp $(INCLUDES) $< > $@ ==== Wenn du dann noch einen Wrapper um fetchmail baust, der vorher ein make -C /verz/wo/das/Makefile/und/die/fetchmailrc.in/liegen aufruft, läuft das sogar komplett automatisch ;) HTH, -dnh -- The social dynamics of the net are a direct consequence of the fact that nobody has yet developed a Remote Strangulation Protocol. -- Larry Wall -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
participants (4)
-
Andre Tann
-
David Haller
-
Joachim Marx
-
Ralf Prengel