web-dev-qa-db-fra.com

Envoi de courrier via la console CMD

Bonjour, je souhaite envoyer un courrier via la console Microsoft cmd. J'ai essayé de nombreuses façons, mais je n'ai pas réussi. 

j'ai essayé cet article http://jpsoft.com/help/index.htm?sendmail.htm

sendmail "[email protected] bcc:[email protected]" Test Hello!

l'erreur est: 

'sendmail' is not recognized as an internal or external command operable program or batch file

et 

cet article: http://www.brighthub.com/office/collaboration/articles/21840.aspx#imgn_1

c:\>"c:\program files\Microsoft office\office12\Outlook.exe" /c ipm.note /m [email protected] /a "c:\logs\logfile.txt"

l'erreur est: 

the process can not access the file because it is being used by another proccess

mais cela n'a pas fonctionné. Je ne sais pas où est le problème ou quel est le problème.

merci pour vos conseils.

9
user1479273

Scénario: Votre domaine: mydomain.com Domaine que vous souhaitez envoyer à: theirdomain.com

1. Déterminez le serveur de messagerie auquel vous envoyez. Ouvrez une invite CMD Type 

NSLOOKUP 
 set q=mx 
 theirdomain.com

Réponse: 

Non-authoritative answer: 
theirdomain.com MX preference = 50, mail exchanger = mail.theirdomain.com 
Nslookup_big

EDIT Assurez-vous de taper exit pour mettre fin à NSLOOKUP.

2. Connectez-vous à leur serveur de messagerie

SMTP communique sur le port 25. Nous allons maintenant essayer d'utiliser TELNET pour se connecter à leur serveur de messagerie "mail.theirdomain.com"

Ouvrir une invite CMD 

TELNET MAIL.THEIRDOMAIN.COM 25

Vous devriez voir quelque chose comme ceci comme réponse: 

220 mx.google.com ESMTP 6si6253627yxg.6

Sachez que différents serveurs émettent des messages d'accueil différents, mais vous devez obtenir quelque chose. Si rien ne se présente à ce stade, il y a 2 problèmes possibles. Le port 25 est bloqué sur votre pare-feu ou leur serveur ne répond pas. Essayez un autre domaine, si cela fonctionne, alors ce n'est pas vous.

3. Envoyer un email

Maintenant, utilisez des commandes SMTP simples pour envoyer un email de test. Ceci est très important, vous ne POUVEZ PAS utiliser la touche Retour arrière, cela fonctionnera à l'écran mais ne sera pas interprété correctement. Vous devez taper ces commandes parfaitement.

ehlo mydomain.com 
mail from:<[email protected]> 
rcpt to:<[email protected]> 
data 
This is a test, please do not respond
. 
quit

Alors, qu'est-ce que tout cela signifie? EHLO - présentez-vous au serveur de messagerie. HELO peut également être utilisé, mais EHLO indique au serveur d'utiliser le jeu de commandes étendu (ce n'est pas que nous l'utilisions).

MAIL FROM - qui envoie l'e-mail. Assurez-vous de placer ceci entre "plus grand que/moins que de crochets", car de nombreux serveurs de messagerie en auront besoin (Postini).

RCPT TO - à qui vous l'envoyez. Encore une fois, vous devez utiliser les crochets. Voir l'étape 4 pour savoir comment tester le courrier relayé!

DATA - indique au serveur SMTP que ce qui suit est le corps de votre courrier électronique. Assurez-vous de cliquer sur "Entrée" à la fin.

. - le point seul sur la ligne indique au serveur SMTP que vous avez tout fait avec la partie données et que l'envoi du courrier électronique est clair.

quit - quitte la session TELNET.

4. Test du relais SMTP Le test du relais SMTP est très simple et nécessite simplement une petite modification des commandes ci-dessus. Voir ci-dessous:

ehlo mydomain.com 
mail from:<[email protected]> 
rcpt to:<[email protected]> 
data 
This is a test, please do not respond 
. 
quit

Regarde la différence? Sur la ligne RCPT TO, nous envoyons vers un domaine qui n'est pas contrôlé par le serveur SMTP auquel nous envoyons. Vous obtiendrez une erreur immédiate si le relais SMTP est désactivé. Si vous êtes en mesure de continuer et d'envoyer un courrier électronique, le relais est autorisé par ce serveur.

21
Mahmut EFE

Sauf si vous souhaitez parler directement à un serveur SMTP via telnet, vous utiliserez des expéditeurs en ligne de commande tels que blat :

blat -to [email protected] -f [email protected] -s "mail subject" ^
  -server smtp.example.net -body "message text"

ou bmail :

bmail -s smtp.example.net -t [email protected] -f [email protected] -h ^
  -a "mail subject" -b "message text"

Vous pouvez également écrire votre propre courrier dans VBScript ou PowerShell .

4
Ansgar Wiechers

Sous Linux, vous pouvez utiliser «swaks», qui est disponible comme paquet officiel sur de nombreuses distributions, y compris Debian/Ubuntu et Redhat/CentOS sur EPEL:

swaks -f [email protected] -t [email protected] \
    --server mail.example.com
1
ColinM

Quelques autres programmes de messagerie en ligne de commande:

Les deux prennent également en charge SSL.

0
Roland Pihlakas