web-dev-qa-db-de.com

Geben Sie den E-Mail-Benutzer an, wenn Sie mit dem E-Mail-Befehl E-Mails senden

Weiß jemand, wie Sie den Benutzer ändern können, wenn Sie E-Mails mit dem E-Mail-Befehl senden? Ich habe die Manpage durchgesehen und kann nicht sehen, wie das geht. 

Wir betreiben Redhat Linux 5.

53
Joel Cunningham

http://www.mindspill.org/962 scheint eine Lösung zu haben.

Im Wesentlichen:

echo "This is the main body of the mail" | mail -s "Subject of the Email" [email protected] -- -f [email protected]

27

Sie können mit -a einen beliebigen zusätzlichen Header angeben

$mail -s "Some random subject" -a "From: [email protected]" [email protected]
66
daniels

mail -r [email protected] -R [email protected]

-r = from-addr - R = Antwort-zu-Adr

Der Autor hat angegeben, dass seine Mail-Version dieses Flag nicht unterstützt. Aber wenn Sie eine Version haben, die dies tut, funktioniert das gut.

20
bfabry

Beim Senden über SMTP empfiehlt die Manpage mail, die Variable from folgendermaßen festzulegen (Geted on CentOS 6):

mail -s Subject -S [email protected] [email protected]

Sie können eine Datei auch mit der Option -a anhängen:

mail -s Subject -S [email protected] -a path_to_attachement [email protected]
15
G.J

Keines davon funktionierte für mich (Ubuntu 12.04), aber schließlich mit Trial & Error bekam ich:

echo 'my message blabla\nSecond line (optional of course)' | 
mail -s "Your message title"
-r 'Your full name<[email protected]>'
-Sreplyto="[email protected]"
[email protected][,[email protected]]

(Alles in einer Zeile, es gibt kein Leerzeichen in "-Sreplyto")

Ich habe diesen Mailbefehl erhalten von:

apt-get install mailutils
5
Le Droid

Sie können sendmail-Optionen an das Ende des E-Mail-Befehls anhängen, indem Sie zunächst - hinzufügen. -f ist der Befehl in sendmail, um die Absenderadresse festzulegen. So kannst du das machen:

mail [email protected] - -f [email protected]

3
Gerald

Keines der oben genannten Dinge funktionierte für mich. Und ich habe lange gebraucht, um es herauszufinden, hoffentlich hilft das dem nächsten Kerl.

Ich verwende Ubuntu 12.04 LTS mit mailutils v2.1.

Ich habe diese Lösungen irgendwo im Netz gefunden, weiß nicht wo, kann sie nicht wieder finden:

-aFrom:[email protected]

Full Command verwendet:

cat /root/Reports/ServerName-Report-$DATE.txt | mail -s "Server-Name-Report-$DATE" [email protected] -aFrom:[email protected]
2
Hardus

Hier ist eine Lösung .

Die zweit einfachste Lösung nach -r (wobei ein From: -Header angegeben und durch eine neue Zeile vom Rumpf getrennt werden soll)

 $mail -s "Subject" [email protected]
 From: Joel <[email protected]>

 Hi!
 .

funktioniert in nur wenigen Mailversionen, weiß nicht, welche Version Redhat trägt).

PS: Die meisten Mailversionen sind scheiße!

2
Vinko Vrsalovic
echo "This is the main body of the mail" | mail -s "Subject of the Email" [email protected] -- -f [email protected] -F "Elvis Presley"

oder

echo "This is the main body of the mail" | mail -s "Subject of the Email" [email protected]mple.com -aFrom:"Elvis Presley<[email protected]>"
1

Die meisten Benutzer müssen zwei Werte ändern, wenn sie versuchen, die Absenderadresse in einer E-Mail korrekt zu fälschen. Erstens ist die Absenderadresse und zweitens die Absenderadresse. Viele der online angebotenen Lösungen ändern nur einen dieser Werte.

Wenn ich als root einen einfachen Mail-Befehl versuche, um mir eine E-Mail zu senden, könnte das so aussehen. echo "test" | mail -s "a test" [email protected]

Und die zugehörigen Protokolle: Feb 6 09:02:51 myserver postfix/qmgr[28875]: B10322269D: from=<[email protected]>, size=437, nrcpt=1 (queue active) Feb 6 09:02:52 myserver postfix/smtp[19848]: B10322269D: to=<[email protected]>, relay=myMTA[x.x.x.x]:25, delay=0.34, delays=0.1/0/0.11/0.13, dsn=2.0.0, status=sent (250 Ok 0000014b5f678593-a0e399ef-a801-4655-ad6b-19864a220f38-000000)

Der Versuch, die Absenderadresse mit - echo "test" | mail -s "a test" [email protected] -- [email protected] Zu ändern

Dies ändert den Wert von orig-to, aber nicht den Wert von from: Feb 6 09:09:09 myserver postfix/qmgr[28875]: 6BD362269D: from=<[email protected]>, size=474, nrcpt=2 (queue active) Feb 6 09:09:09 myserver postfix/smtp[20505]: 6BD362269D: to=<[email protected]>, orig_to=<[email protected]>, relay=myMTA[x.x.x.x]:25, delay=0.31, delays=0.06/0/0.09/0.15, dsn=2.0.0, status=sent (250 Ok 0000014b5f6d48e2-a98b70be-fb02-44e0-8eb3-e4f5b1820265-000000)

Versuchen Sie es als nächstes mit einem -r und einem -, um das from und orig-to anzupassen. echo "test" | mail -s "a test" -r [email protected] [email protected] -- [email protected]

Und die Protokolle: Feb 6 09:17:11 myserver postfix/qmgr[28875]: E3B972264C: from=<[email protected]>, size=459, nrcpt=2 (queue active) Feb 6 09:17:11 myserver postfix/smtp[21559]: E3B972264C: to=<[email protected]>, orig_to=<[email protected]>, relay=myMTA[x.x.x.x]:25, delay=1.1, delays=0.56/0.24/0.11/0.17, dsn=2.0.0, status=sent (250 Ok 0000014b5f74a2c0-c06709f0-4e8d-4d7e-9abf-dbcea2bee2ea-000000)

So funktioniert es bei mir. Hoffe das hilft jemandem.

1
Jerad

Dies funktioniert auf Centos7

echo "This is the main body of the mail" | mail -s "Subject of the Email" -r [email protected] [email protected]

1
Santiago Trias

Hier ist eine Antwort aus dem Jahr 2018 auf Debian 9.

Beachten Sie den -e für Echo, um Zeilenumbrüche zuzulassen, und -r für mailx, um einen Namen zusammen mit einer ausgehenden E-Mail-Adresse anzuzeigen:

$ echo -e "testing email via yourisp.com from command line\n\nsent on: $(date)" | mailx -r "Foghorn Leghorn <[email protected]>" -s "test cli email $(date)" -- [email protected]

Hoffe das hilft!

1
woohoo

zu CentOs5: -r [email protected]

0
fun_vit

Für CentOS ist hier der Arbeitsbefehl:

mail -s Subject -S [email protected] [email protected]
0
Youssef ASEBRIY

Vielen Dank an alle Beispielanbieter, einige haben für einige nicht funktioniert . Unten ist ein weiteres einfaches Beispielformat, das für mich funktioniert hat.

echo "Sample body" | mail -s "Test email" [email protected] [email protected]
0
ayon