¿Cómo envío un archivo como archivo adjunto de correo electrónico usando la línea de comando de Linux?

Resuelto Kit Roed asked hace 16 años • 25 respuestas

Creé un script que se ejecuta todas las noches en mi servidor Linux y que utiliza mysqldumppara hacer una copia de seguridad de cada una de mis bases de datos MySQL en archivos .sql y los empaqueta como un archivo .tar comprimido. El siguiente paso que quiero lograr es enviar ese archivo tar por correo electrónico a un servidor de correo electrónico remoto para su custodia. Pude enviar el script sin formato en el cuerpo de un correo electrónico canalizando el archivo de texto de respaldo de la mailxsiguiente manera:

$ cat mysqldbbackup.sql | mailx [email protected]

cathace eco del texto del archivo de copia de seguridad que se canaliza al mailxprograma con la dirección de correo electrónico del destinatario pasada como argumento.

Si bien esto logra lo que necesito, creo que podría ser un paso mejor. ¿Hay alguna forma, utilizando scripts de shell o de otro modo, de enviar el archivo .tar comprimido a un mensaje de correo electrónico saliente como archivo adjunto ? Esto evitaría tener que lidiar con mensajes de correo electrónico muy largos que contienen datos de encabezado y que a menudo tienen problemas de ajuste de palabras, etc.

Kit Roed avatar Aug 20 '08 09:08 Kit Roed
Aceptado

Ninguno de los perros callejeros funcionó para mí. Pensaba que la dirección de correo electrónico era parte del archivo adjunto. Tuve que hacer:

echo "This is the message body" | mutt -a "/path/to/file.to.attach" -s "subject of message" -- [email protected]
rynop avatar Mar 01 '2012 21:03 rynop

O, en su defecto, perro callejero:

gzip -c mysqldbbackup.sql | uuencode mysqldbbackup.sql.gz  | mail -s "MySQL DB" [email protected]
Daniel Fone avatar Aug 20 '2008 04:08 Daniel Fone

Dependiendo de su versión de Linux, puede llamarse correo. Para citar a @David arriba:

mail -s "Backup" -a mysqldbbackup.sql [email protected] < message.txt

o también:

cat message.txt | mail -s "Backup" -a mysqldbbackup.sql [email protected]
Nathan Fellman avatar Aug 20 '2008 03:08 Nathan Fellman