| 
	
		|  Autor | Tema: Script Batch para enviar email  (Leído 32,624 veces) |  
	| 
			| 
					
						| vpluque 
								
								 Desconectado 
								Mensajes: 9
								
								
								
								
								
								   | 
 
Hola! estaria interesado en mandar un email con un texto y si es posible un archivo adjunto desde un archivo.bat Se puede realizar? he probado con: echo hola | mail ejemplo@gmail.com y nada!! Gracias
 
 |  
						| 
								|  |  
								| « Última modificación: 30 Marzo 2011, 14:36 pm por vpluque » |  En línea | 
 
 |  |  |  | 
			| 
					
						| madpitbull_99 | 
 
Es Bash o Batch?  En Bash se puede hacer así: #!/bin/bash# asuntoSUBJECT="SET-EMAIL-SUBJECT"# Destinatario EMAIL="usuario@gmail.com"# MensajeEMAILMESSAGE="/tmp/emailmessage.txt"echo "Esto es una prueba"> $EMAILMESSAGEecho "Probando" >>$EMAILMESSAGE# llamar a /bin/mail para enviarlo/bin/mail -s "$SUBJECT" "$EMAIL" < $EMAILMESSAGE
 Esto va en Scripting .
 
 |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  | 
			| 
					
						| vpluque 
								
								 Desconectado 
								Mensajes: 9
								
								
								
								
								
								   | 
 
lo queria hacer en batch, en windows |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  | 
			| 
					
						| madpitbull_99 | 
 
Pues el titulo dice Bash . Decídete! En Batch he visto algunos códigos aunque no he probado ninguno: :: Use your own mappings and search strings hereNET USE P: |  FIND /I "%username% " >NUL  2>NULNET USE S: |  FIND /I "system" >NUL  2>NUL:: Create an e-mail message if any errors were detected:: Clear variables used in this batch fileFOR %%A IN (BODY DATE ERRORS LINE MESSAGE TIME) DO SET %%A = :ErrorMsgSET /A ERRORS = %ERRORS%  + 1	SET BODY=%BODY%%%0 D%%0 ADrive%%2 0%1%%2 0not%%2 0mapped)FOR /F "TOKENS=3* DELIMS= " %%A IN ( 'NET USE %1 ^|  FIND "Local name"') DO SET  MESSAGE=Drive%%2 0%%A%%2 0mapped%%2 0to%%2 0:: Replacement of backslashes "\" by "%%5C":: prevents interpretation of "\n" as CR/LFFOR /F "TOKENS=3,4* DELIMS=\ " %%A IN ( 'NET USE %1 ^|  FIND "Remote name"') DO SET  MESSAGE=%MESSAGE%%%5 C%%5 C%%A%%5 C%%BSET BODY=%BODY%%%0 D%%0 A%MESSAGE% :MailFOR /F "TOKENS=2*" %%A IN ( 'DATE/T') DO SET  DATE=%%ASTART mailto:helpdesk@ourdomain.com?subject=Drive%%20mapping%%20error^&body=At%%20%DATE%,%%20%TIME%,%%20user%%20%USERNAME%%%20encountered%%20the%%20following%%20drive%%20mapping%%20error(s)%%20on%%20%COMPUTERNAME%:%%0D%%0A%BODY%
 _Fuente  del script. Fíjate que es fácil de hacer, la línea mas importante es esta: START mailto:helpdesk@ourdomain.com?subject=Drive%%20mapping%%20error^&body=At%%20%DATE%,%%20%TIME%,%%20user%
 Si tienes instalado Exchange puedes usar MAPISend.exe : C:\> MAPISend –u “Exchange Profile” –r mad@ehn.net –s “Asunto del Email?” –m “Enviando email desde MAPISend!!!”Aquí(petri.co.il/send_mail_from_script.htm) tienes mas formas de enviar un email desde la consola. |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  | 
			| 
					
						| vpluque 
								
								 Desconectado 
								Mensajes: 9
								
								
								
								
								
								   | 
 
Ese batch no me vale ya que sale la ventana de enviar correo y yo lo que quiero es que no salga nada por pantalla, simplemente enviar el correo y ya!
 he visto que se puede mandar con un programa que se llama blat, pero no se configurarlo.
 Alguien lo ha utilizado??
 
 Saludos
 |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  | 
			| 
					
						| SuperDraco 
								       
								
								 Desconectado 
								Mensajes: 2.505
								
								 
								Crew Dragon
								
								
								
								
								
								   | 
 
Puedes ocultar la salida de cualquier comando añadiendole ">nul 2>&1" al final del comando, así que el del mapisend que te ha dicho madpitbull te sirve, bueno, lo que te he dicho te sirve con todos,no muestra NADA en la pantalla, otra cosa es que la funcion del comando de mandar emails funcione correctamente... xD |  
						| 
								|  |  
								|  |  En línea | 
 
 No he vuelto, solo estoy de paso. |  |  |  | 
			| 
					
						| SuperDraco 
								       
								
								 Desconectado 
								Mensajes: 2.505
								
								 
								Crew Dragon
								
								
								
								
								
								   | 
 
Me uno al problema... Aqui podeis descargar el blat...http://sourceforge.net/projects/blat/files/¿Porque este comando en Blat no me funciona? blat.exe -server smtp.live.com -f xxxxx@hotmail.com -u csg1986 -pw MIPASSWORD -subject "hola que pasa" -body "kekekekepasa" -to xxxxx@gmail.comObtengo como resultado este error: Blat v2.6.2 w/GSS encryption (build : Feb 25 2007 12:06:19)
 Sending stdin.txt to xxxxx@gmail.com
 Subject: hola que pasa
 Login name is xxxxx@hotmail.com
 The SMTP server does not require AUTH LOGIN.
 Are you sure server supports AUTH?
 The SMTP server does not like the sender name.
 Have you set your mail address correctly?
dice algomalo del auth, así que he intentado hacerlo sin -u y pw así: blat.exe -server smtp.live.com -f xxxxx@hotmail.com -subject "hola que pasa" -body "kekekekepasa" -to xxxxx@gmail.comy el resultado es: Sending stdin.txt to xxxxx@gmail.comSubject: hola que pasa
 Login name is xxxxx@hotmail.com
 The SMTP server does not like the sender name.
 Have you set your mail address correctly?
Tambien he probado a hacer lo mismo cambiando de servidor, usando smtp.google.com, y en ese no me dice nada... pero tampoco se manda el email. |  
						| 
								|  |  
								| « Última modificación:  5 Septiembre 2025, 18:42 pm por Songoku » |  En línea | 
 
 No he vuelto, solo estoy de paso. |  |  |  | 
			| 
					
						| Esgrimidor 
								
								 Desconectado 
								Mensajes: 152
								
								
								
								
								
								   | 
 
Me interesa revivir este post tan antiguo ya que aparece un código batch, que modificado, me podría valer. Yo utilizo el cliente Thunderbird, pero en modo portable.
 De forma que :
 
 Me interesa que el batch no funcione mirando cuál es el cliente de correo por defecto. He puesto TB porque también lo tengo instalado en modo no portable.
 Pero todo está en la versión portable, cuentas definidas, y todos los correos envíados y recibidos; están en la versión portable.
 
 De forma que :
 1) El batch que aparece más arriba me funciona bien si tengo abierta mi versión portable
 2) no me funciona bien si no tengo abierto el cliente de correo TB portable, porque va a abrir la versión portable donde ni siquiera tengo definidas las cuentas, y que además no me interesa que el email envíado se me registre allí.
 
 Luego me gustaría un batch que pudiera configurar para decirle que cliente de correos tiene que usar, independientemente de la configuración windows (creo que hay un modo de engañar al s.o. cuando se tiene TB portable, pero no me lo he mirado).
 
 Gracias
 
 |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  |  |  
 
	
 
 
				
					
						| Mensajes similares |  
						|  | Asunto | Iniciado por | Respuestas | Vistas | Último mensaje |  
						|   |   | que se necesita para enviar un email a hotmail? Desarrollo Web
 | josco | 5 | 7,062 |  8 Febrero 2012, 19:13 pm por josco
 |  
						|   |   | Problema para enviar un email  desde mi localhost con swiftmailer en hotmail. PHP
 | Master_77777 | 6 | 4,208 |  6 Diciembre 2013, 02:22 am por Master_77777
 |  
						|   |   | Script para hacer pings y reenviat txt a email Scripting
 | SocSoc | 3 | 4,471 |  24 Diciembre 2014, 11:45 am por Eleкtro
 |  
						|   |   | [AYUDA] necesito script para enviar gmail desde bat Scripting
 | eldukkk | 5 | 4,752 |  8 Marzo 2016, 19:02 pm por eldukkk
 |  
						|   |   | Ayuda para Script (Bash) para enviar salida de un comando por mail Scripting
 | Kithai | 0 | 2,545 |  5 Diciembre 2016, 15:00 pm por Kithai
 |    |