Perl Hispano Artículos : Tutoriales Basicos : Como enviar email en Perl - Perl Hispano

Para ello, deberemos conocer la ruta absoluta de sendmail (en el ejemplo /usr/sbin/sendmail) y redirigiendo el correo que queremos enviar al mismo sendmail usando la entrada estandar, conseguiremos realizar el envío que deseamos.

El procedimiento es muy sencillo, veamos un ejemplo y despues explicare que es exactamente lo que se está haciendo:

codigo:#!/usr/bin/perl
open(SENDMAIL, "| /usr/sbin/sendmail -t");
print SENDMAIL "Reply-to: de@programacionweb.net";
print SENDMAIL "Subject: Mensaje con perl";
print SENDMAIL "To: para@programacionweb.net";
print SENDMAIL "Content-type: text/plain";
print SENDMAIL "\n\n";
print SENDMAIL "Este es el texto del mensaje";
print SENDMAIL "\n\n";
close(SENDMAIL);

La primera linea del script, indica al sistema donde está el interprete de perl (/usr/bin/perl) para que el script pueda ser ejecutado, seguidamente , hacemos un open con un pipe (|) al sistema de envio (/usr/sbin/sendmail -t), de esta manera, todo lo que escribamos usando print en el canal abierto (llamado SENDMAIL) será enviado por el pipe al programa sendmail que se encargará de enviarlo a su destinatario.

Las siguientes líneas són el mensaje, compuesto por los encabezados, que indican para quien, de quien y de que trata el email, y después de dos saltos de línea (\n) el cuerpo del mensaje terminado por dos saltos de línea más.

Una vez cerrado el canal de comunicación usando close, sendmail da el mensaje por finalizado y lo envía a quien hayamos indicado en los encabezados

Leave a comment

About perlhispano

user-pic Blog de Perl en Español