antecedentes
Se creó un entorno de clúster en el proyecto y se supervisó la disponibilidad de red de toda la máquina del clúster mediante un script de shell. Si el script no detecta la conectividad de la red, imprimirá un registro de errores y enviará una notificación por correo electrónico al personal correspondiente. ¿Cómo usar los comandos de linux para enviar correo?
Aquí se encontró una buena herramienta: mailx .
Introducción
Mailx es un sistema de procesamiento de correo inteligente, que tiene una sintaxis de comandos que recuerda a ed (1) con líneas reemplazadas por mensajes. Está basado en Berkeley Mail 8.1, está destinado a proporcionar la funcionalidad del comando POSIX mailx y ofrece extensiones para MIME, IMAP, POP3, SMTP y S / MIME. Mailx proporciona funciones mejoradas para uso interactivo, como almacenamiento en caché y operación desconectada para IMAP, enhebrado de mensajes, puntuación y filtrado. También se puede utilizar como lenguaje de lotes de correo, tanto para enviar como para recibir correo.
Mailx es un programa de procesamiento de correo que tiene esta rica sintaxis de línea de comandos para enviar correo.
instalación
Usamos el siguiente comando para instalar:
#centos sudo yum install mailx -y #Ubuntu sudo apt install heirloom-mailx -y
Configuración
Archivo de configuración
Centos:
/etc/mail.rc
Ubuntu:
/etc/nail.rc o /etc/s-nail.rc
Contenido de configuración
# /etc/s-nail.rc Reemplazar con el archivo de configuración del sistema real
cat >> /etc/s-nail.rc << EOF set smtp = smtp.126.com set from = [email protected] set [email protected] set smtp-auth-password = DUFPNGHRMZTTSXWH establecer smtp-auth = iniciar sesión EOF
explique:
- smtp: se refiere a la dirección del servicio smtp, aquí estoy usando la dirección del servicio smtp del buzón 126
- from: se refiere a la dirección de origen del correo
- smtp-auth: se refiere al nombre de usuario del buzón
- smtp-auth-password: se refiere al código de autorización del cliente (no a la contraseña del buzón)
- smtp-auth: la configuración predeterminada es iniciar sesión
enviar correo electrónico
El envío de correo se divide en interactivo y no interactivo, y el no interactivo se divide en dos formas.
Interactivo
Generalmente usamos este tipo de menos, principalmente para probar:
Entrada: correo [email protected]
Ingrese asunto
Contenido de entrada
Presione ctrl + d, finalice la entrada y luego presione Entrar
No interactivo
1) echo "contenido del correo" | correo -s "asunto" dirección de correo electrónico
Utilizo este método, como se muestra a continuación:
2) mail -s "asunto" "dirección de correo electrónico" <"ruta / nombre de archivo"
Esto es para leer directamente el contenido del archivo especificado y enviarlo como contenido de correo
Sugerencia: si hay varios destinatarios, sepárelos con una coma
Blogger: prueba para ganar dinero
Lema: Centrarse en las pruebas y la automatización, y esforzarse por mejorar la eficiencia de la investigación y el desarrollo; a través de las pruebas y la diligencia para completar la acumulación original, a través de la lectura y la gestión financiera a la libertad financiera.
csdn: https://blog.csdn.net/ccgshigao
Blog Park: https://www.cnblogs.com/qa-freeroad/