Wie kann ich mit mailx bcc?


8

Ich versuche unix mail( heirloom-mailx) über bcc zu senden .

$ mail -V
12.5 6/20/10

Mein MTA ist exim, der über Google Mail SMTP sendet.

Ich kann Folgendes ausführen:

echo -e "body" | mail -s 'subject' -b hidden1@server.com,hidden2@server.com visible@server.com

Alle Adressen erhalten die E-Mail, der bcc ist jedoch nicht ausgeblendet. dh in der E-Mail an hidden1@server.comsehe ich immer noch:

To: visible@server.com
Bcc: hidden1@server.com,hidden2@server.com

Wie kann ich mailsend bcc richtig machen?


Ich habe diesen Thread auf SO gefunden: stackoverflow.com/questions/14521280/…
slm

@ SLM Danke. Ich bin auf ein paar andere Posts gestoßen, die -bsich beschwert haben, dass dies nicht funktioniert hat, aber sie schienen darauf hinzudeuten, dass es überhaupt nicht gesendet werden würde, anstatt auf das Problem, das ich habe. Wenn ich hier jedoch keine Antwort bekomme, schaue ich mir einige der anderen Mail-Programme an.
Sparhawk

Könnten Sie den von Ihnen verwendeten MTA-Server nennen? [sendmail / postfix / exim / ...] Ich denke, dass viele Server Bcc:Header entfernen.
AnFi

Ich benutze exim, das über Google Mail SMTP sendet.
Sparhawk

Antworten:


7

heirloom-mailx codiert die Optionen, an die übergeben werden soll, fest /usr/sbin/sendmail, und leider funktionieren die übergebenen Bcc:Header im Exim nicht richtig. Das ist nicht wirklich reparabel, ohne es zu patchen und neu zu kompilieren. (Sie müssen es -tzu den Argumenten hinzufügen lassen und dann entweder die Liste der E-Mail-Adressen nicht übergeben oder alternativ extract_addresses_remove_arguments = falsein Ihrer Exim-Konfiguration festlegen ).

Es gibt eine einfachere Lösung: Lassen Sie es einfach über SMTP senden. Sie tun dies, indem Sie die smtpOption festlegen localhost. Da ein lokaler MTA ausgeführt wird, sollten Sie ihn auf einstellen können . Sie können so testen:

$ mail -S smtp=localhost -s 'test message' -b other@domain.com email@domain.com
la la la
.

Wenn dies funktioniert, können Sie die SMTP-Option in /etc/nail.rc(systemweit) oder ~/.mailrc(pro Benutzer) einfügen . Beachten Sie, dass nail.rcmit einem n kein Tippfehler vorliegt.


Oh! Das war überraschend einfach. Ich zuvor gmail smtp mit einrichten sudo dpkg-reconfigure exim4-configund ändern /etc/exim4/passwd.client. Wie soll ich diese Änderungen rückgängig machen und in welcher Beziehung stehen sie zueinander /etc/nail.rc?
Sparhawk

@Sparhawk Es gibt keinen Grund, Ihre exim4-config-Änderungen rückgängig zu machen. nagel.rc konfiguriert nur heirloom-mailx und in diesem Fall konfigurieren Sie es nur so, dass es auf andere Weise mit Ihrem lokalen Exim spricht (über eine TCP-Verbindung zu localhost im
Vergleich zu

3

Bei Verwendung von GNU mailxfrom mailutilspackage können BCC und CC hinzugefügt werden, indem die --appendOption zum Hinzufügen von Header-Variablen wie folgt verwendet wird:

$ echo -e "body text line1\nline2\n\nsent at: $(date)" | mailx --append='FROM:Foghorn Leghorn <fleghorn@sender-domain.com>' --append='BCC:recipient1@acme.com' -s "test subject" -- recipient@acme.com mickey@mouse.com minnie@mouse.com

Beachten Sie auch, wie der obige Befehl die Header-Variable für die FROM-Adresse verwendet.


Hallo, ich bin nicht mehr in der Lage, dies zu testen, aber danke für die Antwort (+1)!
Sparhawk

@Sparhawk: das ist okay, ich tun Test alle meine Antworten :)
woohoo

Ich meinte eher, dass ich für +1 wirklich überprüfen sollte, ob "diese Antwort [für mich] nützlich ist" ", aber da ich nicht kann, gab ich Ihnen den Vorteil des Zweifels.
Sparhawk
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.