Mail, el comando para mandar emails desde la terminal de Ubuntu

top feature image

Mail, el comando para mandar emails desde la terminal de Ubuntu

En el siguiente artículo vamos a echar un vistazo al comando Mail. Hoy en día existen muchas maneras de enviar correos electrónicos, bien sea utilizando GUI, usando el navegador o con un cliente de correo electrónico. Pero las opciones se vuelven más limitadas cuando se trata de la interfaz de línea de comando (CLI). Por eso en este post vamos a ver cómo enviar correos desde la terminal de un sistema Gnu/Linux.

Hay algunas opciones que podemos utilizar para enviar correos desde la terminal, como podrían ser Sendmail, Mutt, etc. Pero en estas líneas, veremos cómo utilizar el comando Mail para enviar correos desde la terminal de nuestro sistema. Este comando lo vamos a poder utilizar directamente desde la terminal o también podemos usarlo cuando programemos nuestros scripts de BASH.

Antes de empezar a utilizarlo, vamos a tener que instalar este comando de correo, en caso de que nuestra distribución no disponga de el de manera predeterminada.

Instalación de Mail

Como digo, muchas distribuciones Gnu/Linux, disponen del comando de correo de manera predeterminada. Si este no es el caso de tu sistema, decir que se puede instalar utilizando unos pocos comandos. Para este artículo he de decir que yo estoy utilizando Ubuntu 18.04 LTS. En caso de tener que instalar el programa en Ubuntu/Debian/Linux Mint, podemos usar apt-get para instalar el comando en nuestros sistemas. Abrimos una terminal (Ctrl+Alt+T) y escribimos:

Ejemplos para enviar correos desde la terminal con el comando Mail

Enviar un correo simple

Para enviar un correo simple, tan solo con algún contenido en el cuerpo, ejecutaremos:

mail enviado desde la terminal

En este comando, la opción -s se usa para mencionar el asunto del correo. Sigue la dirección de correo electrónico a la que queremos enviar el correo. Ahora, después de ejecutar el comando anterior, necesitamos escribir el contenido del cuerpo. Una vez que hayamos terminado, pulsaremos la combinación de teclas CTRL+D para salir y enviar el correo.

En nuestro gestor de correo recibiremos algo como lo siguiente. He de reconocer que de primeras, el correo lo he encontrado en la carpeta de span.

email simple enviado con mail recibido

También podemos usar el siguiente comando en una sola línea para enviar el correo:

Enviar correo a destinatarios múltiples

Para enviar correos a más de un usuario, tan solo tendremos que mencionar todas las direcciones de correo electrónico separadas por una coma. Un ejemplo de ello sería:

Correo enviado con mail a destinatarios múltiples desde la terminal

Los usuarios a los que se les envía el correo, recibirán algo como lo siguiente:

mail de correo a destinatarios múltiples recibido

Enviar un correo con archivo adjunto

Otra opción que tendremos, será la de enviar un correo con un archivo adjunto. Para esto utilizaremos la opción ‘A’ con el comando Mail. He de decir que el archivo que envío en este ejemplo está en la misma carpeta en la que me encuentro mientras envío el correo. Por ejemplo, si quisiésemos enviar un archivo llamado ‘texto.txt‘, utilizaríamos el siguiente comando:

mail de correo con archivo adjunto enviado desde la terminal

El usuario que reciba el correo, verá en su gestor de correo algo como lo que se puede ver en la siguiente captura:

mail de correo con archivo adjunto recibido

Enviar el contenido de un archivo en el mail

Para enviar el contenido de un archivo usando el comando mail escribiremos en la terminal:

mail correo contenido archivo enviado desde terminal

El usuario recibirá el contenido del archivo directamente en el cuerpo del correo. Como se puede ver en la siguiente captura, no se envía como adjunto el archivo en cuestión, como ocurría en el anterior apartado.

mail correo contenido archivo recibido

Enviar un correo con la salida de un comando

Vamos a poder enviar la salida de un comando como el contenido del cuerpo del correo. Por ejemplo, si necesitamos enviar la salida de ‘cat /home/sapoclay/.config/mimeapps.list‘ utilizaríamos:

mail correo resultado comando enviado desde terminal

Enviar un correo con el comando echo

También podemos hacer uso del comando echo para enviar un correo electrónico.

Enviar un correo con encabezados adicionales

Para enviar un correo con encabezados adicionales, utilizaremos la opción ‘a’ con el comando de correo.

mail correo encabezados adicionales enviado desde terminal

El resultado recibido por el usuario sería el siguiente:

Mail de correo con encabezados adicionales recibidos

Con esto damos por terminado el artículo. Estos fueron solo algunos ejemplos comunes del uso de este comando. Buscando un poco por internet se pueden encontrar algunas otras. También podremos encontrar más documentación sobre este comando haciendo uso de las páginas man en la terminal (Ctrl+Alt+T):

man comando mail


2 Comments

No tienes que configurar gmail. Al menos no como yo entendí el funcionamiento de este comando. Se trata de enviar correos desde la terminal de Ubuntu a una cuenta de correo, no de enviar correos de una cuenta de correo a otra. Aun que deberías echarle un vistazo a la ayuda que ofrece man, por si te saca de dudas. Salu2 y gracias por la visita.

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.