Pregunta:¿Cómo enviar un correo electrónico con archivos adjuntos desde una máquina Linux usando el comando mailx?
Respuesta:
La sintaxis básica para enviar correos electrónicos desde una máquina Linux usando el comando mailx se muestra a continuación:
# echo "this is the body of the email" | mailx -vvv -s "test mail" -r "From" -S smtp="your-smtp" someone@address
aquí,
-vvv = Verbosity. -s = Specifies the subject. -r = Email sent from. -S = Specifies the smtp server.
Método 1:usando uuencode (método antiguo)
Si la versión de mailx es inferior a 12.x, puede usar el comando uuencode para enviar correos con archivos adjuntos.
# uuencode [path/to/file] [name_of_attachment] | mailx -s "Subject" user@domain.com
Método 2:-un cambio en el comando mailx
Use el nuevo interruptor adjunto (-a) en mailx para enviar adjuntos con el correo. Las opciones -a son más fáciles de usar que el comando uuencode.
# mailx -a file.txt -s "Subject" user@domain.com
El comando anterior imprimirá una nueva línea en blanco. Escriba el cuerpo del mensaje aquí y presione [ctrl] + [d] para enviar. Esto adjuntará el archivo al correo electrónico saliente correctamente con el tipo de contenido y los encabezados de límites adecuados.
Para hacer esto más "scriptable", puede enviar el mensaje sin cuerpo con lo siguiente:
# mailx -a file.txt -s "Subject" user@domain.com < /dev/null
Para enviar correos electrónicos con un cuerpo de mensaje, reemplace /dev/null en el comando anterior con el archivo de cuerpo de su mensaje.
En la versión más nueva de mailx, los encabezados que se usan en el correo electrónico saliente cambiaron de:
From: Date: To: Subject:
al siguiente formulario:
From: Date: To: Subject: User-Agent: MIME-Version: Content-Type: Content-Transfer-Encoding:
Cómo enviar correos con archivos adjuntos usando el comando solaris mailx