如何使用shell自动发送邮件
时间: 2023-11-18 22:05:27 浏览: 42
使用Shell自动发送邮件可以使用命令行工具如`mail`或`sendmail`,也可以使用脚本语言如Python的smtplib库。下面分别介绍两种方式:
方式一:使用命令行工具
1. 首先,确保你的系统已经安装了mail或sendmail命令行工具。
2. 使用以下命令发送邮件:
```
echo "邮件正文" | mail -s "邮件主题" 收件人邮箱
```
或者
```
echo -e "邮件正文" | sendmail -t 收件人邮箱
```
例如,发送一封简单的邮件:
```
echo "这是一封测试邮件" | mail -s "测试邮件" test@example.com
```
方式二:使用Python脚本
1. 首先,确保你已经安装了Python,并且安装了smtplib库。
2. 创建一个Python脚本,比如`send_email.py`,并添加以下代码:
```python
import smtplib
from email.mime.text import MIMEText
# 邮件参数
sender = '发件人邮箱'
receiver = '收件人邮箱'
subject = '邮件主题'
body = '邮件正文'
# 构造邮件内容
msg = MIMEText(body)
msg['Subject'] = subject
msg['From'] = sender
msg['To'] = receiver
# 发送邮件
with smtplib.SMTP('smtp.example.com', 25) as server:
server.login('发件人邮箱', '密码')
server.sendmail(sender, receiver, msg.as_string())
```
替换代码中的发件人邮箱、收件人邮箱、邮件主题、邮件正文、SMTP服务器地址和端口号,并且提供发件人邮箱的密码(或者使用授权码)。
3. 运行脚本:
```
python send_email.py
```
脚本将会发送邮件给指定的收件人。
请注意,在使用该方法时,需要确保你的系统已经正确配置了SMTP服务器,并且能够正常发送邮件。