script postfix mail enviar desde correo consola con comando linux email redhat

linux - postfix - enviar mail desde bash



Especifique el usuario de cuando envíe correos electrónicos usando el comando de correo (15)

Al enviar a través de SMTP, la página man del mail informa que configure la variable from , de esta manera:

mail -s Subject -S [email protected] [email protected]

De lo contrario, use la opción -r .

Probado en CentOS 6.

También podría adjuntar un archivo usando la siguiente sintaxis:
mail -s Subject -S [email protected] [email protected] <absolute_path_of_file_to_be_attached>

¿Alguien sabe cómo cambiar al usuario cuando envía un correo electrónico usando el comando de correo? Revisé la página del manual y no veo cómo hacerlo.

Estamos ejecutando Redhat Linux 5.


Aquí hay una solution .

La segunda solución más fácil después de -r (que es especificar un encabezado From: y separarlo del cuerpo por una nueva línea como esta

$mail -s "Subject" [email protected] From: Joel <[email protected]> Hi! .

funciona solo en unas pocas versiones de correo, no sé qué versión lleva redhat).

PD: ¡La mayoría de las versiones de correo apestan!


Aquí hay una respuesta de 2018, en el tramo Debian 9.

Tenga en cuenta -e para que echo permita caracteres de nueva línea, y -r para que mailx muestre un nombre junto con una dirección de correo electrónico saliente:

$ echo -e "testing email via yourisp.com from command line/n/nsent on: $(date)" | mailx -r "Foghorn Leghorn <[email protected]>" -s "test cli email $(date)" -- [email protected]

¡Espero que esto ayude!


Enfrenté el mismo problema. Pero resolví el problema simplemente estableciendo el campo geko en el campo / ect / passwd . Postfix por defecto envía el correo desde el inicio de sesión del usuario. Supongamos que quiere cambiar de campo a Alerta. Solo necesita editar / ect / passwd en cualquier editor que desee.

  1. vim / ect / passwd

root: x: 0: 0: Alerts : / root: / bin / bash

  1. Reinicie postfix.

Ahora mira el resultado.

  1. echo "Este es el cuerpo principal del correo" | mails "Asunto del correo electrónico" [email protected]

Ahora en el destinatario. De se mostrará como Alertas como ha especificado en el campo geko. Espero que esta solución funcione para ti.



Gracias a todos los proveedores de ejemplo, algunos funcionaron para algunos no. A continuación hay otro formato de ejemplo simple que funcionó para mí.

echo "Sample body" | mail -s "Test email" [email protected] [email protected]


La mayoría de las personas necesitan cambiar dos valores cuando intentan forzar correctamente la dirección de origen en un correo electrónico. Primero es la dirección de origen y la segunda es la dirección de origen. Muchas de las soluciones que se ofrecen en línea solo cambian uno de estos valores.

Si como raíz, intento un comando de correo simple para enviarme un correo electrónico, podría verse así. echo "test" | mail -s "a test" [email protected]

Y los registros asociados: Feb 6 09:02:51 myserver postfix/qmgr[28875]: B10322269D: from=<[email protected]>, size=437, nrcpt=1 (queue active) Feb 6 09:02:52 myserver postfix/smtp[19848]: B10322269D: to=<[email protected]>, relay=myMTA[xxxx]:25, delay=0.34, delays=0.1/0/0.11/0.13, dsn=2.0.0, status=sent (250 Ok 0000014b5f678593-a0e399ef-a801-4655-ad6b-19864a220f38-000000)

Intentando cambiar la dirección de origen con - echo "test" | mail -s "a test" [email protected] -- [email protected] echo "test" | mail -s "a test" [email protected] -- [email protected]

Esto cambia el valor original, pero no el valor desde: Feb 6 09:09:09 myserver postfix/qmgr[28875]: 6BD362269D: from=<[email protected]>, size=474, nrcpt=2 (queue active) Feb 6 09:09:09 myserver postfix/smtp[20505]: 6BD362269D: to=<me@noone>, orig_to=<[email protected]>, relay=myMTA[xxxx]:25, delay=0.31, delays=0.06/0/0.09/0.15, dsn=2.0.0, status=sent (250 Ok 0000014b5f6d48e2-a98b70be-fb02-44e0-8eb3-e4f5b1820265-000000)

Luego intentándolo con a -r y a - para ajustar el from y orig-to. echo "test" | mail -s "a test" -r [email protected] [email protected] -- [email protected]

Y los registros: Feb 6 09:17:11 myserver postfix/qmgr[28875]: E3B972264C: from=<[email protected]>, size=459, nrcpt=2 (queue active) Feb 6 09:17:11 myserver postfix/smtp[21559]: E3B972264C: to=<[email protected]>, orig_to=<[email protected]>, relay=myMTA[xxxx]:25, delay=1.1, delays=0.56/0.24/0.11/0.17, dsn=2.0.0, status=sent (250 Ok 0000014b5f74a2c0-c06709f0-4e8d-4d7e-9abf-dbcea2bee2ea-000000)

Así es como funciona para mí. Espero que esto ayude a alguien.


Ninguno de estos funcionó para mí (Ubuntu 12.04) pero finalmente con prueba y error obtuve:

echo ''my message blabla/nSecond line (optional of course)'' | mail -s "Your message title" -r ''Your full name<[email protected]>'' -Sreplyto="[email protected]" [email protected][,[email protected]]

(todo en una línea, no hay espacio en "-Splyplyto")

Recibí este comando de correo de:

apt-get install mailutils


Ninguno de los anteriores funcionó para mí. Y me llevó mucho tiempo descubrirlo, espero que esto ayude al siguiente tipo.

Estoy usando Ubuntu 12.04 LTS con mailutils v2.1.

Encontré estas soluciones en algún lugar de la red, no sé dónde, no puedo encontrarlas de nuevo:

-aFrom:[email protected]

Comando completo utilizado:

cat /root/Reports/ServerName-Report-$DATE.txt | mail -s "Server-Name-Report-$DATE" [email protected] -aFrom:[email protected]


Puede agregar opciones de sendmail al final del comando de correo agregando primero -. -f es el comando en sendmail para configurar la dirección de origen. Entonces puedes hacer esto:

correo [email protected] - -f [email protected]



correo -r [email protected] -R [email protected]

-r = de-addr -R = respuesta-a addr

El autor ha indicado que su versión de correo no es compatible con esta bandera. Pero si tienes una versión que funciona, funciona bien.