Domanda Come inviare posta dalla riga di comando?


Come inviare posta dalla riga di comando?


194
2017-11-12 20:27


origine


ubuntuforums.org/showthread.php?t=780509 può aiutarti. - User
Puoi anche usare pine. - Kaveh
È inoltre possibile installare msmtp e seguire le istruzioni descritte in ArchWiki - thiagowfx
Peccato che le risposte a questo siano così obsolete. È una domanda importante che potrebbe utilizzare un buon tutorial - 6005


risposte:


Prova ad installare Il client e-mail Mutt. Un'altra opzione sta usando emacs con gnu. Sono disponibili anche altre opzioni ... IMHO, dovresti usare più dettagli nelle tue domande, o più risposte diverse alla tua domanda che riceverai :-)


32
2017-11-12 20:46



Accettato questo poiché non richiede alcuna configurazione ed è abbastanza user-friendly. - Olivier Lalonde
aspettare. mutt - user friendly? il one-liner più folle che ho letto oggi :) - Stann


  1. Installare ssmtp  Install ssmtp:

    sudo apt-get install ssmtp
    
  2. Modifica il file di configurazione ssmtp:

    gksu gedit /etc/ssmtp/ssmtp.conf
    
  3. Aggiungi il seguente testo:

    root=username@gmail.com
    mailhub=smtp.gmail.com:465
    rewriteDomain=gmail.com
    AuthUser=username
    AuthPass=password
    FromLineOverride=YES
    UseTLS=YES
    
  4. Esegui ssmtp e fornisci l'indirizzo email del destinatario:

    ssmtp recepient_name@gmail.com
    
  5. Fornire i dettagli del messaggio come segue:

    To: recipient_name@gmail.com
    From: username@gmail.com
    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. stampa Ctrl + D inviare.


Puoi anche inserire il testo nel file e inviarlo come segue:

ssmtp recipient_name@gmail.com < filename.txt

143
2017-11-12 21:32



Sembra strano lasciare la mia password di posta elettronica esposta in qualche file sul computer. È sicuro? - oadams
Gli @oadams non sono molto sicuri. Utilizzare la verifica in due passaggi per ridurre il rischio o utilizzare un gateway di posta che non richiede una password, come gli ISP. - itsadok
Non installare ssmtp su un server con postfix installato. Postfix sarà rimosso. Invece, usa sendmail user@example.com <file.txt che funzionerà con postfix o ssmtp. - Alistair Buxton
Un'altra cosa strana che volevo condividere qui è che non ha funzionato per me quando avevo una password lunga / complessa, ma ha funzionato quando l'ho modificata con una password semplice, strana ma vera. Ho anche sentito la stessa cosa da qualcun altro, ma l'ho provato dopo molti tentativi falliti di inviare posta e appena ho semplificato la password, con mia sorpresa, ha funzionato;) - Rajat Gupta
Se Gmail non consente l'accesso al tuo server, accedi a Gmail sul server con il browser a riga di comando. askubuntu.com/questions/460022/using-terminal-as-a-web-browser - Sanghyun Lee


Il più delle volte non dovresti aver bisogno di configurare un server SMTP che puoi semplicemente usare mail dalla riga di comando (se non è già presente, installare con sudo apt-get install mailutils). (O se sei su un server in cui sendmail è configurato, ecc.)

marco@dagobah:~$ mail -v marco.ceppi.use@gmail.com
Subject: Hello World!
This is an email to myself.

Hope all is well.
.
Cc: 

Si terminano i messaggi con un singolo . in linea. Ecco quando mail ti richiederà Cc: inserisci le informazioni (o lascia vuoto) e mail stamperà quindi ulteriori informazioni su ciò che sta tentando di fare, oltre a fornire dettagli sull'elaborazione di connessione, trasmissione e ricezione di dati dal server di posta.


84
2017-11-12 22:52



Aggiungerei la risposta per includere "sudo apt-get install mailutils" poiché non è presente su un'installazione pulita di Ubuntu 10.04. Inoltre, terminando il messaggio con a. su una singola riga non ha funzionato. Ho dovuto "Ctrl-D" invece. Infine, il messaggio non è andato a buon fine! - Olivier Lalonde
@OlivierLalonde sudo apt-get install mailutils installerà un server SMTP che è postfix, che potrebbe essere un po 'sovrappeso per alcune persone. - vaab
mailutils installerà anche mysql! - chmike
opzione -v non nella mia installazione di posta 2.99.98, doveva anche usare Ctrl + D per terminare - markmnl
Si prega di aggiornare questa domanda, è obsoleto. - Blauhirn


apt-get install libio-socket-ssl-perl libnet-ssleay-perl sendemail

utilizzo:

sendemail -f fromuser@gmail.com -t touser@domain.com -u subject -m "message" -s smtp.gmail.com:587 -o tls=yes -xu gmailaccount@gmail.com -xp gmailpassword 

Se non si desidera specificare la password nella riga di comando (in genere non è una buona cosa da fare), è possibile omettere tale parametro e SendEmail vi verrà chiesto di inserire la password ... e visualizzarlo sullo schermo, ma almeno non sarà nella tua cronologia della riga di comando.


44
2017-11-14 01:48



Invio di posta da un account GMail utilizzando sendmail la maggior certezza molto utile. Grazie. - Mark Tomlin
Trova una patch Qui non far eco alla password. - Arun
Ho dovuto specificare la porta con -s smtp.gmail.com:587. - Joe Mornin
aggiungi uno spazio prima di una riga di comando per non salvarlo nella cronologia della riga di comando - pl-94
un altro modo per non visualizzarlo sullo schermo bash: salvare la password in un file, quindi da file in una variabile di ambiente, ad esempio: pass=$(cat my_password); sendemail... -xp $name ... e, naturalmente, se lo chiami a livello di programmazione puoi fare qualcosa di simile, ad esempio: ruby system("sendemail ... -xp #{File.read 'my_password'}...") inoltre potrebbe non riuscire la prima volta, dovresti ricevere un'email a quell'account che ti suggerisce di "abilitare app meno sicure", quindi può funzionare. - rogerdpack


mpack è un modo eccellente per inviare file allegati.

apt-get install mpack

utilizzo:

mpack -s "file you wanted" ./data.pdf loser@supergoober.cn

21
2017-11-12 22:47





È necessario un MTA per inviare posta. Per questo, usa postfix:

sudo apt-get install postfix

Per inviare email:

echo "test message" | mailx -s 'test subject' myemail@mydomain.com

AIUTO


16
2017-08-10 15:57



È inoltre necessario installare mailutils per mailx, giusto? - Nick
Vorrei che fosse davvero così semplice, ma a meno che tu non sia qualcuno davvero speciale, questo non funzionerà. Il 99,999% degli ISP ignorerà la posta dai server postfix privati, perché 9,9999 volte su 10 sono spammer. - Cerin
questo non ha funzionato per me, ha chiesto di installare mailutils quando sono entrato nel terminal - mostafiz rahman
Vai avanti e installa mailutils. Non hai bisogno di postfix IIRC. - uav


Installa il pacchetto sendmail quindi digita

sendmail -t receiver@example 

quindi scrivi la tua email quindi premere Ctrl + D


14
2017-07-03 17:14





È possibile inviare una e-mail dalla riga di comando con TelNet o netcat.

Tutto è spiegato Qui.

hanoo@hp_laptop% nc 127.0.0.1 25
220 hp_laptop.localdomain ESMTP Postfix
EHLO man
250 hp_laptop.localdomain
MAIL FROM: <netcat@postfix.com>
250 2.1.0 Ok
RCPT TO: <target@host.com>
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

8
2017-10-30 05:33



È un po 'difficile usare SSL quando si utilizza questo metodo;) - iX3
@ iX3 basta usare swaks e stai bene anche con SSL / TLS ;-) - Germar
O openssl s_client -starttls smtp ... - Raman


mail -s "subjet" -a "attchedfile_name" someone@dest_email.com

o

cat "afile" | mail -s "subject" someone@dest_email.com

8
2018-03-21 19:16



solo per aggiungere per un facile test: echo "Hello world!" | mail -s "Ciao" mail@esempio.org - Bohne
Se qualcuno non ha il comando mail, esegui semplicemente: sudo apt-get install mailutils in Ubuntu / Debian o yum install mailx in CentOS / Redhat - Giovanni Benussi