Question Comment envoyer du courrier depuis la ligne de commande?


Comment envoyer du courrier depuis la ligne de commande?


194
2017-11-12 20:27


origine


ubuntuforums.org/showthread.php?t=780509 peut vous aider - User
Vous pouvez également utiliser du pin. - Kaveh
Vous pouvez également installer msmtp et suivre les instructions décrites dans le ArchWiki - thiagowfx
C'est dommage que les réponses à cette question soient tellement dépassées. C'est une question importante qui pourrait utiliser un bon tutoriel - 6005


Réponses:


Essayer d'installer Le client de messagerie Mutt. Autre option: utiliser emacs avec gnous. Autres options disponibles aussi ... à mon humble avis, vous devriez utiliser plus de détails dans vos questions, ou plusieurs réponses différentes à votre question, vous recevrez :-)


32
2017-11-12 20:46



Accepté celui-ci car il ne nécessite aucune configuration et est très convivial. - Olivier Lalonde
attendez. mutt - convivial? le one-liner le plus fou que j'ai lu aujourd'hui :) - Stann


  1. Installer ssmtp  Install ssmtp:

    sudo apt-get install ssmtp
    
  2. Editez le fichier de configuration ssmtp:

    gksu gedit /etc/ssmtp/ssmtp.conf
    
  3. Ajoutez le texte suivant:

    root=username@gmail.com
    mailhub=smtp.gmail.com:465
    rewriteDomain=gmail.com
    AuthUser=username
    AuthPass=password
    FromLineOverride=YES
    UseTLS=YES
    
  4. Exécutez ssmtp et indiquez l'adresse électronique du destinataire:

    ssmtp recepient_name@gmail.com
    
  5. Fournissez les détails du message comme suit:

    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. presse Ctrl +  envoyer.


Vous pouvez également mettre le texte dans le fichier et l'envoyer comme suit:

ssmtp recipient_name@gmail.com < filename.txt

143
2017-11-12 21:32



Il semble étrange de laisser mon mot de passe e-mail exposé dans certains fichiers de l'ordinateur. Est-ce sûr? - oadams
@oadams pas très sûr. Utilisez la vérification en deux étapes pour réduire les risques ou utilisez une passerelle de messagerie ne nécessitant pas de mot de passe, comme votre fournisseur de services Internet. - itsadok
N'installez pas ssmtp sur un serveur avec postfix installé. Postfix sera supprimé. Au lieu de cela, utilisez simplement sendmail user@example.com <fichier.txt qui fonctionnera avec postfix ou ssmtp. - Alistair Buxton
Une autre chose étrange que je voulais partager ici, c’est que cela n’a pas fonctionné lorsque j’avais un mot de passe long / complexe mais que je travaillais quand je l’ai modifié en un mot de passe simple, étrange mais vrai. J'ai aussi entendu la même chose de quelqu'un d'autre mais je l'ai essayé après de nombreuses tentatives infructueuses pour envoyer du courrier et dès que j'ai simplifié le mot de passe, à ma grande surprise, cela a fonctionné;) - Rajat Gupta
Si Gmail n'autorise pas l'accès à votre serveur, connectez-vous à Gmail sur le serveur avec un navigateur de ligne de commande. askubuntu.com/questions/460022/using-terminal-as-a-web-browser - Sanghyun Lee


La plupart du temps, vous ne devriez pas avoir besoin de configurer un serveur SMTP, vous pouvez simplement utiliser mail à partir de la ligne de commande (s’il n’est pas déjà présent, installez avec sudo apt-get install mailutils). (Ou si vous êtes sur un serveur où sendmail est configuré, etc.)

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

Hope all is well.
.
Cc: 

Vous terminez les messages avec un seul . en ligne. C'est quand mail vous demandera Cc: entrer les informations (ou laisser en blanc) et mail imprimera ensuite des informations supplémentaires sur ce qu’il essaie de faire, en détaillant le traitement de la connexion, de la transmission et de la réception des données du serveur de messagerie.


84
2017-11-12 22:52



J'ajouterais la réponse pour inclure "sudo apt-get install mailutils" car il n'est pas présent sur une installation propre d'Ubuntu 10.04. En outre, terminer le message avec un. sur une seule ligne ne fonctionnait pas. Je devais "Ctrl-D" à la place. Enfin, le message n'a pas été transmis! - Olivier Lalonde
@OlivierLalonde sudo apt-get install mailutils va installer un serveur SMTP qui est postfix, qui pourrait être un peu surpondéré pour certaines personnes. - vaab
mailutils va également installer mysql! - chmike
-v option pas dans mon installation de mail 2.99.98, devait également utiliser Ctrl + D pour terminer - markmnl
Veuillez mettre à jour cette question, elle est obsolète. - Blauhirn


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

usage:

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 

Si vous ne voulez pas spécifier votre mot de passe dans la ligne de commande (ce qui n'est généralement pas une bonne chose à faire), vous pouvez omettre ce paramètre et sendemail vous demandera le mot de passe ... et l'affichera à l'écran, mais au moins il ne sera pas dans votre historique de ligne de commande.


44
2017-11-14 01:48



Envoi de courrier depuis un compte GMail en utilisant sendmail la plus grande certitude très pratique. Je vous remercie. - Mark Tomlin
Trouvez un patch ici ne pas faire écho au mot de passe. - Arun
Je devais spécifier le port avec -s smtp.gmail.com:587. - Joe Mornin
ajouter un espace avant une ligne de commande pour ne pas l'enregistrer dans l'historique de la ligne de commande - pl-94
une autre façon de ne pas l'afficher sur l'écran bash: enregistrer le mot de passe dans un fichier, puis depuis la variable fichier vers l'environnement, ex: pass=$(cat my_password); sendemail... -xp $name ... et bien sûr, si vous l'appelez par programmation, vous pouvez faire quelque chose de similaire, ex: ruby system("sendemail ... -xp #{File.read 'my_password'}...") il peut aussi échouer la première fois, vous devriez recevoir un email sur ce compte pour vous suggérer "d'activer des applications moins sécurisées" alors ça peut fonctionner. - rogerdpack


mpack est une excellente façon d'envoyer des pièces jointes en ligne de commande.

apt-get install mpack

usage:

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

21
2017-11-12 22:47





Vous avez besoin d'un MTA pour envoyer du courrier. Pour cela, utilisez postfix:

sudo apt-get install postfix

Pour envoyer un email:

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

AIDEZ-MOI


16
2017-08-10 15:57



Vous devez également installer mailutils pour mailx, non? - Nick
J'aimerais que ce soit aussi simple, mais à moins que vous ne soyez quelqu'un de très spécial, ça ne va pas marcher. 99,9999% des FAI ignoreront les messages provenant de serveurs postfix privés, car 9.99999 fois sur 10, ils sont des spammeurs. - Cerin
cela n'a pas fonctionné pour moi, il a demandé à installer mailutils quand je suis entré dans le terminal - mostafiz rahman
Allez-y et installez mailutils. Vous n'avez pas besoin de postfix IIRC. - uav


Installez le paquet sendmail puis tapez

sendmail -t receiver@example 

alors écrivez votre email puis appuyez sur Ctrl + D


14
2017-07-03 17:14





Vous pouvez envoyer un email depuis la ligne de commande avec TelNet ou NetCat.

Tout est expliqué ici.

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



Il est un peu difficile d'utiliser SSL lorsque vous utilisez cette méthode;) - iX3
@ iX3 juste utiliser swaks et vous êtes bien avec SSL / TLS aussi ;-) - Germar
Ou openssl s_client -starttls smtp ... - Raman


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

ou

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

8
2018-03-21 19:16



juste pour ajouter pour un test facile: echo "Bonjour tout le monde!" | mail -s "Bonjour" mail@example.org - Bohne
Si quelqu'un n'a pas la commande mail, lancez simplement: sudo apt-get install mailutils dans Ubuntu / Debian ou yum install mailxdans CentOS / Redhat - Giovanni Benussi


Si vous essayez d’envoyer un courrier électronique à partir d’un système qui n’exécute pas de serveur de messagerie électronique (par exemple, un ordinateur de bureau), vous devez installer quelque chose comme: nullmailer ou esmtp, qui transfère votre courrier local vers un "vrai" serveur de messagerie.

Comme outils de ligne de commande, vous pouvez installer mail ou mailx (packages mailutils, heirloom-mailx ou bsd-mailx). Si vous avez besoin de pièces jointes, essayez le biabam.


6
2017-11-12 21:21



J'aime bsd-mailx pour la commande -E et cronjobs - meffect


Je n'ai jamais essayé mais il y a un mail commande qui peut envoyer du courrier. Voir mail homme.

Pour tester le courrier électronique local:

echo message | mail username@localhost

5
2017-11-12 20:30