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 [email protected],[email protected] [email protected]

Alle Adressen erhalten die E-Mail, der bcc ist jedoch nicht ausgeblendet. dh in der E-Mail an [email protected]sehe ich immer noch:

To: [email protected]
Bcc: [email protected],[email protected]

Wie kann ich mailsend bcc richtig machen?

Sparhawk
quelle
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 [email protected] [email protected]
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.

derobert
quelle
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 <[email protected]>' --append='BCC:[email protected]' -s "test subject" -- [email protected] [email protected] [email protected]

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

woohoo
quelle
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