Sobre la base de la publicación anterior, donde el requisito era que los trabajos cron enviaran mensajes de estado a través de una sola línea de comando, como se publicó aquí:
¿La forma más sencilla de enviar correo de una línea a través de la línea de comandos usando gmail?
Surgió la pregunta de cómo usar una sola línea para enviar un archivo adjunto.
Escenario:
El trabajo cron genera el archivo de salida así:
cd /home/pi/python
gnuplot plt12
el archivo de programa plt12 incluye las siguientes dos líneas:
set output "pl12.png"
set terminal png font "arial,11"
Esto se está haciendo en un sistema Rpi3B conectado a través de USB a un Nano para el ADC que realiza el registro de datos.
Entonces, la pregunta es, ¿cuál es la forma más fácil de enviar esa imagen de archivo de trazado, usando una sola línea de comando, a través de gmail?
Respuesta aceptada:
Con mutt
:
SMTP_URL='smtps://user:[email protected]' mutt
-F /dev/null
-e 'set from="Me <[email protected]>"'
-e 'set smtp_url=$SMTP_URL'
-s 'pl12.png file'
-a pl12.png --
[email protected] << EOM
Hi,
see pl12.png attached.
--
Me
EOM
Como todo código shell, siempre puedes ponerlo en una línea si te apetece, aunque eso no ayuda con la legibilidad:
printf 'Hi,nnsee pl12.png attachednn-- nMen' | SMTP_URL='smtps://user:[email protected]' mutt -F /dev/null -e 'set from="Me <[email protected]>"' -e 'set smtp_url=$SMTP_URL' -s 'pl12.png file' -a pl12.png -- [email protected]