Wie sende ich Mail von der Kommandozeile?

193

Wie sende ich Mail von der Kommandozeile aus?

    
Olivier Lalonde 12.11.2010, 21:27

15 Antworten

32

Versuchen Sie den Mutt E-Mail Client zu installieren. Andere Option ist die Verwendung von Emacs mit gnus . Andere Optionen zur Verfügung ... IMHO, sollten Sie mehr Details in Ihre Fragen oder mehrere verschiedene Antworten auf Ihre Frage, die Sie erhalten: -)

    
crncosta 12.11.2010, 21:46
142
  1. Installieren Sie ssmtp :

    sudo apt-get install ssmtp
    
  2. Bearbeiten Sie die ssmtp-Konfigurationsdatei:

    gksu gedit /etc/ssmtp/ssmtp.conf
    
  3. Fügen Sie den folgenden Text hinzu:

    [email protected]
    mailhub=smtp.gmail.com:465
    rewriteDomain=gmail.com
    AuthUser=username
    AuthPass=password
    FromLineOverride=YES
    UseTLS=YES
    
  4. Führen Sie ssmtp aus und geben Sie die E-Mail-Adresse des Empfängers an:

    ssmtp [email protected]
    
  5. Geben Sie die Nachrichtendetails wie folgt an:

    To: [email protected]
    From: [email protected]
    Subject: Sent from a terminal!
    
    Your content goes here. Lorem ipsum dolor sit amet, consectetur adipisicing.
    (Notice the blank space between the subject and the body.)
    
  6. Drücken Sie Strg + D , um zu senden.

Sie können den Text auch in eine Datei einfügen und wie folgt senden:

ssmtp [email protected] < filename.txt
    
Sid 12.11.2010 22:32
84

In den meisten Fällen sollten Sie keinen SMTP-Server konfigurieren müssen. Sie können einfach mail von der Befehlszeile aus verwenden (wenn es nicht bereits vorhanden ist, installieren Sie mit sudo apt-get install mailutils ). (Oder wenn Sie sich auf einem Server befinden, auf dem sendmail konfiguriert ist, usw.)

[email protected]:~$ mail -v [email protected]
Subject: Hello World!
This is an email to myself.

Hope all is well.
.
Cc: 

Sie beenden Nachrichten mit einem einzigen . online. Das ist, wenn mail Sie auffordert, dass Cc: die Informationen eingibt (oder leer lässt) und mail dann zusätzliche Informationen darüber ausdruckt, was es zu tun versucht, sowie Details zur Verarbeitung von Verbinden, Senden und Empfangen von Daten vom Mail-Server.

    
Marco Ceppi 12.11.2010 23:52
44
apt-get install libio-socket-ssl-perl libnet-ssleay-perl sendemail

Verwendung:

sendemail -f [email protected] -t [email protected] -u subject -m "message" -s smtp.gmail.com:587 -o tls=yes -xu [email protected] -xp gmailpassword 

Wenn Sie Ihr Passwort nicht in der Befehlszeile angeben möchten (im Allgemeinen nicht gut), können Sie diesen Parameter weglassen und sendemail wird Sie nach dem Passwort fragen ... und es auf dem Bildschirm anzeigen, aber zumindest wird es nicht in Ihrer Kommandozeilenhistorie sein.

    
jet 14.11.2010 02:48
21

mpack ist eine ausgezeichnete Befehlszeile zum Senden von Dateianhängen.

apt-get install mpack

Verwendung:

mpack -s "file you wanted" ./data.pdf [email protected]
    
BozoJoe 12.11.2010 23:47
16

Sie benötigen einen MTA, um E-Mails zu senden. Verwenden Sie dazu postfix:

sudo apt-get install postfix

Um eine E-Mail zu senden:

echo "test message" | mailx -s 'test subject' [email protected]

HILFE

    
One Zero 10.08.2012 17:57
14

Installieren Sie das Paket sendmail und geben Sie

ein
sendmail -t [email protected] 

Schreiben Sie dann Ihre E-Mail Drücken Sie dann Strg + D

    
MhdSyrwan 03.07.2012 19:14
8

Sie können eine E-Mail über die Befehlszeile mit TelNet oder NetCat senden.

Alles wird erklärt hier .

>
[email protected]_laptop% nc 127.0.0.1 25
220 hp_laptop.localdomain ESMTP Postfix
EHLO man
250 hp_laptop.localdomain
MAIL FROM: <[email protected]>
250 2.1.0 Ok
RCPT TO: <[email protected]>
250 2.1.5 Ok
data
354 End data with <CR><LF>.<CR><LF>
This is the body of my mail,
this is the second line...
.
250 2.0.0 Ok: queued as 9C12E7F404
    
hanoo 30.10.2012 06:33
8
mail -s "subjet" -a "attchedfile_name" [email protected]_email.com

oder

cat "afile" | mail -s "subject" [email protected]_email.com
    
user142345 21.03.2013 20:16
6

Wenn Sie versuchen, E-Mails von einem System zu senden, das keinen eigenen E-Mail-Server (dh Desktop-System) betreibt, müssen Sie etwas wie nullmailer oder esmtp , die Ihre lokale Mail an einen" echten "Mailserver weiterleiten.

>

Als Befehlszeilentools können Sie mail oder mailx (Pakete mailutils, heirloom-mailx oder bsd-mailx) installieren. Wenn Sie Anhänge benötigen, versuchen Sie es mit Biabam.

    
ddeimeke 12.11.2010 22:21
5

Ich habe es noch nie versucht, aber es gibt einen Befehl mail , der Mail senden kann. Siehe Man Mail .

Um lokale E-Mail zu testen:

echo message | mail [email protected]
    
dv3500ea 12.11.2010 21:30
5
sudo apt-get install sharutils mailutils
uuencode filename filename | mail [email protected]

wobei filename dasselbe ist: es steht für Eingabedatei und Remote-Datei.

    
nisse 10.01.2012 11:14
2

Sie können dies versuchen:

mail [email protected] -s "Attached file" <<EOF                 
Hi

~| uuencode $HOME/filename.txt filename.txt

EOF

Es funktioniert mit GNU Mailutils , checkt die Webseite für weitere Informationen.

    
Sharad 25.04.2012 20:19
0

Zusätzlich zu oben habe ich immer noch diesen Fehler

erhalten
echo "Test message from Linux server using ssmtp" | sudo ssmtp -vvv  [email protected]
[<-] 220 smtp.gmail.com ESMTP v193sm19198825qka.18 - gsmtp
[->] EHLO localhost
[<-] 250 SMTPUTF8
[->] STARTTLS
[<-] 220 2.0.0 Ready to start TLS
[->] EHLO localhost
[<-] 250 SMTPUTF8
[->] AUTH LOGIN
[<-] 334 VXNlcm5hbWU6
[->] aG94Z2VuZUBrrrFpbC5jb20=
[<-] 334 UGFzweliecmQ6
[<-] 534 5.7.14  https://support.google.com/mail/answer/78754 v193sm19198825qka.18 - gsmtp
ssmtp: Authorization failed (534 5.7.14  https://support.google.com/mail/answer/78754 v193sm19198825qka.18 - gsmtp)

LÖSUNG: Führen Sie ein Google Mail-Passwort auch dann zurück, wenn das aktuelle Passwort korrekt ist ... möglicherweise Google Sicherheitshinweis

    
Scott Stensland 29.08.2016 23:58
0

Ausführen :

sudo apt-get install ssmtp
sudo -H gedit /etc/ssmtp/ssmtp.conf

Folgendes muss dort hinzugefügt werden:

# The user that gets all the mails (UID < 1000, usually the admin)
[email protected]

# The mail server (where the mail is sent to), both port 465 or 587 should be acceptable
# See also https://support.google.com/mail/answer/78799
mailhub=smtp.gmail.com:587

# The address where the mail appears to come from for user authentication.
rewriteDomain=gmail.com

# Use SSL/TLS before starting negotiation
UseTLS=Yes
UseSTARTTLS=Yes

# Username/Password
AuthUser=yourusernameofgmail
AuthPass=yourGmailPassowrd
AuthMethod=LOGIN

# Email 'From header's can override the default domain?
FromLineOverride=yes

Ausführen :

sudo -H gedit /etc/ssmtp/revaliases

Geben Sie dort ein:

root:[email protected]:smtp.gmail.com:587

Aktivieren Sie in Gmail "weniger sichere Apps" :
link

Testen Sie es, indem Sie Folgendes am Terminal ausführen:

echo "Body of mail is abc" | mail -s "Subject is xyz" "[email protected]"'
    
Aquarius_Girl 27.07.2017 10:42

Tags und Links