Meine virtuelle Presse

Mailman: In welchen Listen bin ich eigentlich?

Um in der BASH herauszufinden, in welchen Mailman–Listen man Mitglied ist, empfehle ich folgenden Einzeiler:

for LIST in $(/var/lib/mailman/bin/list_lists -b) ;do echo; echo \#$LIST ; /var/lib/mailman/bin/list_members $LIST; done | grep "#\|<e-mail-adresse"

Aber eins nach dem anderen:

/var/lib/mailman/bin/list_lists -b

Gibt eine Liste mit allen Mailinglisten aus. Die Option „-b“ sorgt dafür, dass auch wirklich nur die Namen, und nicht noch die Beschreibungen ausgegeben werden.

$(<befehl>)

Fügt die Ausgabe von <befehl> genau hier in die aktuelle Kommandozeile ein. Es ist die modernere Version der „Backticks“

for LIST in <parameterliste> ;do <befehle> ; done

Führt die <befehle> für jeden Wert in der <parameterliste> aus. Dieser Wert steht den jeweiligen Kommandos in der Variable $LIST zur Verfügung

|

Übergibt die Ausgabe des vorhergehenden Kommandos (also unserer Schleife) dem nächsten Befehl (also grep)

echo; echo \#$LIST ; /var/lib/mailman/bin/list_members $LIST;

Wird innerhalb der Schleife, also für jede Mailingliste auf dem Server ausgeführt. Es wird zuerst eine Leerzeile und dann der Listenname (als Markdown–Überschrift mit „#“ vorab) ausgegeben. Anschließend werden dann alle Mitglieder dieser Mailingliste ausgegeben.

grep "#\|<e-mail-adresse>"

Gibt lediglich die Zeilen aus, in denen entweder ein Doppelkreuz „#“ (also der Listenname) oder die gesuchte <e-mail-adresse> enthalten ist.

This entry was posted in Uncategorized. Bookmark the permalink. Follow any comments here with the RSS feed for this post. Post a comment or leave a trackback: Trackback URL.

Post a Comment

Your email is never published nor shared. Required fields are marked *

*
*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>