在shell中使用sendmail发送邮件

script1

cat > sendmymail.sh

 

#!/bin/bash
/usr/sbin/sendmail -t <<EOF
From: Mail testing <abc@gmail.com>          
To: abc@gmail.com                                      
Cc: abc@gmail.com                                    
Bcc: abc@gmail.com                                  
Subject: mail testing                                          
----------------------------------                               
This is the mail content ...
---------------------------------
EOF

chmod u+x sendmymail.sh

./sendmymail.sh

script2

#!/bin/bash

curday=$1
msg=$2

echo "From: xxx@xxx.com" > .email.txt
echo "To: xxx@xxx.com;xxx@xxx.com" >> .email.txt

echo "MIME-Version: 1.0" >> .email.txt
echo "Content-Type: text/html" >> .email.txt
echo "Subject: [MapLBSLogDistcpAlarm] - $curday" >> .email.txt

echo "" >> .email.txt
echo "<html>" >> .email.txt
echo "<body>" >> .email.txt

echo "<br/>$msg<br/><br/><br/>" >> .email.txt
echo "host: `hostname`<br/>" >> .email.txt
echo "user: `whoami`<br/>" >> .email.txt
echo "path: `pwd`<br/>" >> .email.txt

echo "</body>" >> .email.txt
echo "</html>" >> .email.txt

cat .email.txt | /usr/sbin/sendmail -t

echo "send ok"
rm -rf .email.txt

man sendmailq
-t参数的含义

-t Read message for recipients. To:, Cc:, and Bcc: lines will be
scanned for recipient addresses. The Bcc: line will be deleted
before transmission.

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
使用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服务器,并且能够正常发送邮件

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值