linux mail 命令参数:

使用mail发邮件时,必须先将sendmail服务启动。

mail –s “邮件主题” –c”抄送地址” –b “密送地址” -- -f 发送人邮件地址 –F 发件人姓名 < 要发送的邮件内容

三种常用格式发信

  mail -s test yangfang@fudan.edu.cn #第一种方法,你可以把当前shell当成编辑器来用,编辑完内容后Ctrl-D结束

  echo “mail content”|mail -s test yangfang@fudan.edu.cn #第二种方法,我用的最多,可能是喜欢管道的缘故吧

  mail -s test yangfang@fudan.edu.cn < file #第三种方法,以file的内容为邮件内容发信

指定特定的发送人:

$ mail -s "just a test" 收信人邮箱地址 < 要发送的邮件内容文件 -- -f 发送人邮件地址 -F 发件人姓名

效果是: 信件内容将发送给 收信人邮箱,显示的发送人为 发送人姓名<发送人邮件地址>,显示的内容为 发送的邮件内容...

包含命令执行结果的MAIL发送:

echo -e `ls /tmp`|mail -s "test" fff@aaa.com < /tmp/dd.txt -- -f cc@aaa.com -F cc

i 忽略 tty 的中断讯号。(interrupt)

I 强迫设成互动模式。(Interactive)

v 列印出讯息,例如送信的地点、状态等等。(verbose)

n 不读入 mail.rc 设定档。

s 邮件标题。

c cc 抄送邮件地址。

b bcc密送邮件地址。

需要sendmail或postfix服务

如果单纯的发文件文件可以用

cat xxxx.txt |mail -s "主旨" abc@xxx.com fff@xxx.com

如果需要发送附件需要安装uuencode来编码 (yum install sharutils)

单独发附件,这样xxxx@xxx.com会收到一个data.txt的附件

uuencode /tmp/data_process.log  data.txt |mail xxx@xxx.com

如果需要正文和附件一起发:

uuencode /tmp/data_process.log  data.txt > /tmp/data_temp.txt

系统收到邮件都会保存在“/var/spool/mail/[linux用户名]”文件中。在linux中输入mail ,就进行了收件箱,并显示二十封邮件列表。

此时命令提示符为”&”:(可以输入以下命令对邮件进行相关操作)

unread 标记为未读邮件

h|headers 显示当前的邮件列表

l|list 显示当前支持的命令列表

?|help 显示多个查看邮件列表的命令参数用法

d 删除当前邮件,指针并下移。 d 1-100 删除第1到100封邮件

f|from 只显示当前邮件的简易信息。 f num 显示某一个邮件的简易信息

f|from num 指针移动到某一封邮件

z 显示刚进行收件箱时的后面二十封邮件列表

more|p|page 阅读当前指针所在的邮件内容 阅读时,按空格键就是翻页,按回车键就是下移一行

t|type|more|p|page num 阅读某一封邮件

n|next|{什么都不填} 阅读当前指针所在的下一封邮件内容阅读时,按空格键就是翻页,按回车键就是下移一行

v|visual 当前邮件进入纯文本编辑模式

n|next|{什么都不填} num 阅读某一封邮件

top 显示当前指针所在的邮件的邮件头

file|folder 显示系统邮件所在的文件,以及邮件总数等信息

x 退出mail命令平台,并不保存之前的操作,比如删除邮件

q 退出mail命令平台,保存之前的操作,比如删除已用d删除的邮件,已阅读邮件会转存到当前用户家目录下的mbox文件中。如果在mbox中删除文件才会 彻底删除。在linux文本命令平台输入 mail -f mbox,就可以看到当前目录下的mbox中的邮件了。

cd 改变当前所在文件夹的位置

写信时,连按两次Ctrl+C键则中断工作,不送此信件。

读信时,按一次Ctrl+C,退出阅读状态。

使用linux mail命令发送邮件:

1. 将文件当做电子邮件的内容送出

语法:mail -s “主题”用户名@地址< 文件

例如:

mail -s “program” user < file.c 将file.c

当做mail的内容,送至user,主题为program。

2. 传送电子邮件给本系统用户

语法:mail 用户名

3. 传送电子邮件至外地用户

语法: mail 用户名@接受地址

…/usr/lib/sendmail -bp

……“Mail queue is empty” ……mail ….

例如:

mailtest@hotmail.com

Subject : mail test

:

键入信文内容

: :

按下Ctrl+D 键或. 键结束正文。

连按两次Ctrl+C键则中断工作,不送此信件。

Cc( Carbon copy) : 复制一份正文,给其他的收信人。

4、将信件送给一个或以上的电子邮件地址。

由于没有加入其他的选项,使用者必须输入标题与信件的内容等。而 user2 没有主机位置,就会送给邮件服务器的 user2 使用者。

mail user1@email.address

mail user1@email.address user2

将 mail.txt 的内容寄给 user2 同时 cc 给 user1 。如果将这一行指令设成 cronjob 就可以定时将备忘录寄给系统使用者。

mail -s 标题 -c user1 user2 < mail.txt

5. 检查所传送的电子邮件是否送出,或滞留在邮件服务器中

语法:/usr/lib/sendmail -bp

若屏幕显示为“Mail queue is empty” 的信息,表示mail 已送出。

若为其他错误信息,表示电子邮件因故尚未送出。

linux mail利用外部邮箱地址发邮件

bin/mail会默认使用本地sendmail发送邮件,这样要求本地的机器必须安装和启动Sendmail服务,配置非常麻烦,而且会带来不必要的

资源占用。而通过修改配置文件可以使用外部SMTP服务器,可以达到不使用sendmail而用外部的smtp服务器发送邮件的目的:

修改/etc/nail.rc (/etc/mail.rc)

set from=fromUser@domain.com smtp=smtp.domain.comset smtp-auth-user=username smtp-auth-password=passwordset smtp-auth=login

说明:

from是发送的邮件地址

smtp是发生的外部smtp服务器的地址

smtp-auth-user是外部smtp服务器认证的用户名

smtp-auth-password是外部smtp服务器认证的用户密码

smtp-auth是邮件认证的方式

配置成功后,就可以使用了

可以发送一封邮件测试一下:

mail -s "test" user@sohu.com <content.txt 其中-s后面的是邮件标题,user@sohu.com是收件人地址,content.txt里面是邮件正文

Linux mail命令使用和sendmail配置的更多相关文章

  1. Linux mail 命令参数

    linux mail 命令参数: 使用mail发邮件时,必须先将sendmail服务启动. mail –s “邮件主题” –c”抄送地址” –b “密送地址” -- -f 发送人邮件地址 –F 发件人 ...

  2. Linux mail 命令使用

    linux mail 命令参数: 使用mail发邮件时,必须先将sendmail服务启动. mail –s “邮件主题” –c”抄送地址” –b “密送地址” -- -f 发送人邮件地址 –F 发件人 ...

  3. LibOpenCM3(一) Linux下命令行开发环境配置

    目录 LibOpenCM3(一) Linux下命令行开发环境配置 本文使用 Linux 环境, 硬件为 STM32F103 系列开发板 LibOpenCM3 介绍 LibOpenCM3 是GPL协议( ...

  4. linux mail命令用法

    在Linux系统下mail命令的测试 1. 最简单的一个例子: mail -s test admin@aispider.com 这条命令的结果是发一封标题为test的空信给后面的邮箱,如果你有mta并 ...

  5. 用linux mail命令发送邮件[Linux]

    mail [-s 邮件标题] <<邮件地址1> [邮件地址2] [邮件地址3]> [ < 包含邮件内容的文件路径 ] <-- -f 发送邮件地址> [-F 显 ...

  6. linux mail命令详解

    用程序发送邮件有3种方式,分别是: 1.模拟http请求邮件服务商网页实现邮件的发送 2.如果邮件服务商开通了smtp服务,那么可以通过smtp协议通过邮件代理服务商发送邮件 3.自己部署邮件服务器, ...

  7. Linux sudo命令——sudoers文件的配置

    Linux sudo命令与其配置文件/etc/sudoers   对linux有一定了解的人多少也会知道点关于sudo命令.sudo命令核心思想是权限的赋予 ,即某个命令的所属用户不是你自己,而你却有 ...

  8. [Linux] mail 命令,进入邮箱及删除邮件

    1. 命令行输入mail 2. 删除邮件 d 删除当前邮件,指针下移: d 1 删除标号为1的邮件: d 2-4 删除标号2到4的邮件: 3. 保存 q 退出mail命令平台,保存之前的操作,比如删除 ...

  9. Linux相关命令、虚拟机网络配置

    虚拟机联网 Linux命令 1.查找 #查找django进程,不包括grep自建的 ps -ef |grep django | grep -v grep # find 查找home目录下的name.t ...

随机推荐

  1. matlab入门笔记(二):矩阵和数组

    摘自<matlab从入门到精通>胡晓东 matlab最基本的数据结构就是矩阵,一个二维的.长方形形状的数据,可以用易于使用的矩阵形式来存储,这些数据可以是数字,字符.逻辑状态,甚至是mat ...

  2. 阮一峰 IaaS,PaaS,SaaS 的区别

    链接: IaaS,PaaS,SaaS 的区别 作者: 阮一峰 日期: 2017年7月23日 越来越多的软件,开始采用云服务. 云服务只是一个统称,可以分成三大类. IaaS:基础设施服务,Infras ...

  3. 命令行运行python项目文件,报错:ModuleNotFoundError: No module named 'xxxx' 解决办法

    在pycharm中写好了自动化测试脚本,并能在pycharm中正常运行,由于要考虑到无人值守时能自动执行,执行时就需要脱离pycharm,直接能用命令执行.但是直接用命令执行用例文件:python3 ...

  4. Ubuntu中开启和关闭防火墙-摘自网络

    1.关闭ubuntu的防火墙 ufw disable开启防火墙ufw enable 2.卸载了iptablesapt-get remove iptables3.关闭ubuntu中的防火墙的其余命令ip ...

  5. Atitit 图像处理类库安装与安装模式的前世今生与未来大趋势attilax总结.docx

    Atitit 图像处理类库安装与安装模式的前世今生与未来大趋势attilax总结.docx 1. 安装的原理,主要是解压,复制,设置三大步1 2. 目前我们常见的三大种安装模式,二进制模式与源码安装模 ...

  6. 【Objective-C】OC中KVO的基本概念和使用方法

    基本概念: 键值观察是一种使用获取其他对象的特定属性变化的通知机制. 控制器层的绑定技术就是严重依赖键值观察获得模型层和控制器层的变化通知的. 对于不依赖控制器层类的应用程序,键值观察提供了一种简化的 ...

  7. 10-free-must-read-books-machine-learning-data-science

    Spring. Rejuvenation. Rebirth. Everything’s blooming. And, of course, people want free ebooks. With ...

  8. ossec变更alert等级及配置邮件预警

    一.场景 当攻击者尝试使用字典对某一台主机的sshd服务进行暴力破解的时候,如果我们能第一时间受到攻击预警的邮件的话,对安全人员或者运维人员来说都能做出快速响应.而使用ossec恰巧可以完成这一工作, ...

  9. 在vue-cli搭建的项目中在后台mock接口中支持req.body和req.cookies

    在<vue-cli搭建的项目中增加后台mock接口>中实现了后台mock,但是前端post的t数据都要在mock的后台接口中使用req的接收数据事件获取http协议body中的数据. re ...

  10. javascript基础拾遗(二)

    1.对象定义 定义属性 var language = { name:'javascript', score:9.0 }; console.log(language.name) console.log( ...