Necesitaría enviar un mensaje con un adjunto desde la línea de comandos…

icon-toolsEn ocasiones necesitamos hacer cosas como como esta, por ejemplo en un script de monitoreo.
El problema está en que para poder enviar como adjunto un fichero binario, necesitamos manipularlo. No puede ser enviado tal cual.


Una solución es codificarlo primero con uuencode. Así los códigos por encima de ASCII 127 serán “empaquetados” de manera que puedan ser enviados (y decodificados al llegar a destino).

El programa uuencode lo encontramos (al menos en este Debian 6) en el paquete sharutils. Una vez instalado el paquete, podemos preparar una línea de comando como:
uuencode download_2.gif download_2.gif | /usr/sbin/sendmail destinatario@minodo.cu

Con esto aseguramos que se envíe el fichero download2.gif.

El “pipìng” asegura que la salida del comando uuencode le sea pasada como parámetro a nuestro MTA (debemos tener uno instalado).

No nos extrañemos de encontrar ese sendmail ahí; realmente es una llamada a nuestro MTA, el que sea que tengamos. Existe un link de compatibilidad en nuestro Postfix/Exim precisamente para poder hacer estas cosas.

Y definitivamente no encuentro cómo ponerle línea de asunto si uso /usr/sbin/sendmail

El buen amigo Ulises me comenta que si se usa simplemente mail en lugar de la línea de “sendmail” es posible hacer que el mensaje lleve también línea de asunto

(con -s ‘ Línea de asunto’)

Ciertamente no lo había pensado, lo de usar simplemente el comando mail… 😆

Estas son las cosas buenas del software libre… siempre alguien tiene una idea mejor que la tuya, y además también la comparte!

Esta entrada fue publicada en Debian, Linux, Programación, Software Libre, Ubuntu. Guarda el enlace permanente.

2 respuestas a Necesitaría enviar un mensaje con un adjunto desde la línea de comandos…

  1. Hola interesante tu Blog si deseas puedes pasarte por el mio ouija.cubava.cu

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *