shell邮件发送功能实现
本文中以163邮箱为例,测试shell邮件发送功能。常见的工具有:mailx、sendmail、mutt等。
1、设置邮件客户端
(1)启用pop3、smtp服务,以支持第三方客户端支持
(2)设置授权码
2、安装使用mailx工具
(1)安装
yum -y install mail sendmail #安装
service sendmail restart #启动服务,注:使用mail之前必须启动sendmail
(2)配置,编辑/etc/mail.rc (CentOS系统),在末尾添加如下内容
# 发送邮件的配置
set from=your_account@.com #外部smtp服务器认证的用户名
set smtp=smtp..com: #外部smtp服务器的地址
set smtp-auth=login #邮件认证的方式
# 外部smtp服务器认证的用户名
set smtp-auth-user=your_account@.com
# 外部smtp服务器认证的用户密码(授权码)
set smtp-auth-password=your_passwd
# 忽略验证
set ssl-verify=ignore
set nss-config-dir=/etc/maildbs/
说明:bin/mail会默认使用本地sendmail发送邮件,这样要求本地的机器必须安装和启动Sendmail服务,配置非常麻烦,而且会带来不必要的资源占用。
而通过修改配置文件可以使用外部SMTP服务器,可以达到不使用sendmail而用外部的smtp服务器发送邮件的目的。
(3)使用mail命令发送邮件
mail常见的使用方法有三种,如下:
方式一:直接使用shell当编辑器
# mail -s "邮件主题" 收件地址
hello,this is the content of mail.
welcome to www.mzone.cc
第一行是输入的命令,-s表示邮件的主题,后面的admin@mzone.cc则是邮件的接收人,输入完这行命令后回车,会进入邮件正文的编写,我们可以输入任何文字,比如上面的两行。当邮件正文输入完成后,需要按CTRL+D结束输入,此时会提示你输入Cc地址,即邮件抄送地址,没有直接回车就完成了邮件的发送。
方式二:使用管道进行邮件发送
echo "邮件内容" | mail -s "邮件主题" 收件地址
echo "邮件内容" | mail -s "邮件主题" -a 附件 收件地址
使用管道直接敲入这行命令即可完成邮件的发送,其中echo后的是邮件正文。
方式三:使用文件进行邮件发送
mail -s "邮件主题" 收件地址 < mail.txt
使用上面的命令后,可把mail.txt文件的内容作为邮件的内容发送给admin@mzone.cc
4、使用
示例:
echo "测试" | mail -s "测试邮件功能" 个人邮箱@xx.com
查看结果
mutt参考:Linux下使用mutt自动发送邮件 http://blog.csdn.net/xiongjiezk/article/details/50191515
Mutt中文手册 https://handsomecheung.github.io/mutt-manual-cn/mutt-manual-1.5.19-cn.html
sendmail常用参数参考:sendmail http://www.courier-mta.org/sendmail.html,或可参考man手册
shell邮件发送功能实现的更多相关文章
- .NET开发邮件发送功能的全面教程(含邮件组件源码)
今天,给大家分享的是如何在.NET平台中开发“邮件发送”功能.在网上搜的到的各种资料一般都介绍的比较简单,那今天我想比较细的整理介绍下: 1) 邮件基础理论知识 2) ...
- 用ASP.NET Core 1.0中实现邮件发送功能-阿里云邮件推送篇
在上篇中用MailKit实现了Asp.net core 邮件发送功能,但一直未解决阿里云邮件推送问题,提交工单一开始的回复不尽如人意,比如您的网络问题,您的用户名密码不正确等,但继续沟通下阿里云客户还 ...
- redmine邮件发送功能配置详解
redmine的邮件发送功能还是很有用的.像项目有更新啦,任务分配啦,都能邮件发送的相关责任人.我自己在linux服务器上安装并启动了redmine后,邮件一直发送了不了.查了网上的资料,都是讲修改下 ...
- .NET开发邮件发送功能
.NET开发邮件发送功能 今天,给大家分享的是如何在.NET平台中开发“邮件发送”功能.在网上搜的到的各种资料一般都介绍的比较简单,那今天我想比较细的整理介绍下: 1) 邮件基础理论知 ...
- SpringBoot 2.X从0到1实现邮件发送功能
Spring中提供了JavaMailSender接口实现邮件发送功能,在SpringBoot2.X中也封装了发送邮件相关的Starter并且提供了自动化配置. 本文目录 一.添加对应的Starter二 ...
- spring-boot-route(二十二)实现邮件发送功能
在项目开发中,除了需要短信验证外,有时候为了节省 短信费也会使用邮件发送.在Spring项目中发送邮件需要封装复杂的消息体,不太方便.而在Spring Boot项目中发送邮件就太简单了,下面一起来看看 ...
- System.Net邮件发送功能踩过的坑
System.Net邮件发送功能踩过的坑 目录 System.Net邮件发送功能踩过的坑 1.EazyEmail邮件发送类库 2.邮件发送授权码与邮件密码 3.通过邮件密码来发送邮件 4.Wiresh ...
- 结合ABP源码实现邮件发送功能
1. 前言 2. 实现过程 1. 代码图(重) 2.具体实现 2.1 定义AppSettingNames及AppSettingProvider 2.2 EmailSenderConfiguration ...
- SSH项目里面 忘记密码的邮件发送功能
package com.xxx.util; import java.util.Date; import java.util.Properties; import javax.mail.Address; ...
随机推荐
- dijkstra算法计算最短路径和并输出最短路径
void dijisitela(int d, int m1) { ], book[], path[], u, v, min; l = ; ; i < n1; i++) { dis[i] = w[ ...
- 了不起的Node.js--之五 TCP连接
TCP连接 传输控制协议(TCP)是一个面向连接的协议,它保证了两台计算机之间数据传输的可靠性和顺序. TCP是一种传输层协议,它可以让你将数据从一台计算机完整有序地传输到另一台计算机. Node.j ...
- Beta阶段事后分析
1. 设想和目标 1.1 我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描述? 我们在Beta阶段任务主要分为两部分,一类是对原功能的扩展,一类是新的博文功能.我们通过规 ...
- Smart Disk -- proposed by Liyuan Liu
Need 如今,照相渐渐得成为了人们的日常举动.几乎所有的人都在随时随地得照相.手机,相机,平板越来越多的设备对照相进行了支持,同时, 照片以一种前所未有的速度渐渐淹没我们的文件夹.而寻找照片,对照片 ...
- django学习--2 模板
Django 模板 在上一章节中我们使用 django.http.HttpResponse() 来输出 "Hello World!".该方式将数据与视图混合在一起,不符合 Djan ...
- [转帖] 学习 Linux 大页的内存知识
一.在解释什么情况下需要开启大页和为啥需要开启大页前先了解下Linux下页的相关的知识:以下的内容是基于32位的系统,4K的内存页大小做出的计算1)目录表,用来存放页表的位置,共包含1024个目录en ...
- OneZero团队Beta发布剧透
统计界面暂不透露,尽请期待.
- react & monaco editor & vs code
react & monaco editor & vs code monaco-editor https://microsoft.github.io/monaco-editor/inde ...
- SpringMvc+JavaConfig+Idea 基于JavaConfig搭建项目
1.介绍 之前搭建SpringMvc项目要配置一系列的配置文件,比如web.xml,applicationContext.xml,dispatcher.xml.Spring 3.X之后推出了基于Jav ...
- [代码]--SQLServer数据库的一些全局变量
select APP_NAME ( ) as w --当前会话的应用程序 select @@IDENTITY --返回最后插入的标识值 select USER_NAME() --返回用户数据 ...