linux mail工具收发邮件

常见的收发邮件的工具有mail命令、mutt命令、windows上的foxmail工具

mail软件
软件名:mailx-12.4-6.el6.x86_64

一份邮件包含有:发件人、收件人、邮件主题、邮件正文(body)、邮件附件等

发邮件的操作:

  1. 发给本机的用户,在编写正文的时候,正文结束用.或者ctrl+d来结束

mail root

[root@centos6 ~]# mail root
Subject: test
this is a test mail
.
EOT
[root@centos6 ~]# 

-s参数指定了邮件的subject内容,邮件的正文结束以.或者ctrl+D来结束
[root@centos6 ~]# mail -s test root
this is a second mail
.
EOT
[root@centos6 ~]# 
  1. 发给外部邮箱

mail 12345@163.com
其中,12345为服务器上的账户,163.com为服务器的名称,当然也可以是IP地址,但是这种方式已经发不出去

  1. 使用文件内容作为邮件的内容来发送
#将/home/oracle/.bash_profile内容发送给root用户的邮箱
[root@centos6 ~]# mail -s "test3" root </home/oracle/.bash_profile
[root@centos6 ~]# 
  1. 发送附件
(1)安装发送附件所需要的编码和解码工具
yum install -y sharutils

(2)将附件进行编码然后发出,下面就是将/etc/hosts文件以附件的形式发送给root用户邮箱里,在邮件中,将该附件名显示为myhosts,邮件主题是"/etc/hosts"
[root@centos6 ~]# uuencode /etc/hosts myhosts|mail -s "/etc/hosts" root
[root@centos6 ~]# 

(3)查看邮件内容为加密的
[root@centos6 ~]# mail
Heirloom Mail version 12.4 7/29/08.  Type ? for help.
"/var/spool/mail/root": 1 message 1 new
>N  1 root                  Tue Aug 30 11:53  26/911   "/etc/hosts"
& 

邮件内容
& 1
Message  1:
From root@centos6  Tue Aug 30 11:53:42 2022
Return-Path: <root@centos6>
From: root <root@centos6>
Date: Tue, 30 Aug 2022 11:53:41 +0800
To: root@centos6
Subject: /etc/hosts
User-Agent: Heirloom mailx 12.4 7/29/08
Content-Type: text/plain; charset=us-ascii
Status: R

begin 644 myhosts
M,3(W+C`N,"XQ("`@;&]C86QH;W-T(&QO8V%L:&]S="YL;V-A;&1O;6%I;B!L
M;V-A;&AO<W0T(&QO8V%L:&]S=#0N;&]C86QD;VUA:6XT"CHZ,2`@("`@("`@
M(&QO8V%L:&]S="!L;V-A;&AO<W0N;&]C86QD;VUA:6X@;&]C86QH;W-T-B!L
H;V-A;&AO<W0V+FQO8V%L9&]M86EN-@HQ-S(N,38N,"XQ,S$@9&<Q"@``
`
end

& 

(4)将邮件附件先保存在本地,然后用uuencode进行解码,-o参数指定了解码后的文件名,该文件就是附件

& s 1 ./fujian
[root@centos6 ~]# ls -l fujian 
-rw-r--r--. 1 root root 921 Aug 30 11:56 fujian
[root@centos6 ~]# 
将附件文件fujian保存在本地,然后解码出的文件名为decode
[root@centos6 ~]# uudecode fujian -o decode
[root@centos6 ~]# ls -l decode
-rw-r--r--. 1 root root 175 Aug 30 11:57 decode
[root@centos6 ~]# 
查看解码后的附件内容,就是附件的内容
[root@centos6 ~]# cat decode 
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
172.16.0.131 centos6
[root@centos6 ~]# 



收邮件操作
其实就是利用mailx命令将/var/spool/mail下的用户邮件读取展示出来

mail命令的界面说明

[root@centos6 ~]# mail
Heirloom Mail version 12.4 7/29/08.  Type ? for help.
#在这里显示了邮件来自于哪个邮箱,这里的/var/spool/mail/root文件里的邮件,总共有273个邮件,179个新的,270个未读

U代表未读取,2代表邮件的编号,root代表邮箱账户 "test"代表邮件的主题
    1 Cron Daemon           Tue Aug 30 11:38  24/974   "Cron <root@centos6> root (/usr/sbin/ntpdate 1.cn.pool.ntp.org && /sbin/hwc"
>   2 root                  Tue Aug 30 11:38  20/657   "test"


其他说明:
&为mail命令里的提示符,可以输入?来获取mail命令里的操作提示

读取信件,是按下enter或者按下数字+enter来读取

当前所指的信件是前面有>提示符,比如
>  20 Cron Daemon  

显示标题用h或者显示某个邮件编号附近的邮件用h number+enter

回复>指向的邮件按下R

删除邮件
删除第2份邮件d2
删除第2-10份邮件d2-10
删除所有邮件 d*
退出时候按下q

将邮件另存为其他地方,因为在POP3协议中,收取邮件后,会从/var/spool/mail/user中删除掉,如果想保存,那么s 2 /home/oracle/oraclemail ,就是将第2份邮件存在了文件oraclemail中,如果要读取的话,那么就mail -f /home/oracle/oraclemail来读取或者直接cat这个文件

退出mail命令
q是将之前的删除动作执行后退出
x或者exit是取消之前的删除动作退出

邮件内容

& 2
Message  2:
From root@centos6  Tue Aug 30 11:38:36 2022
Return-Path: <root@centos6>
From: root <root@centos6>
Date: Tue, 30 Aug 2022 11:38:30 +0800
To: root@centos6
Subject: test
User-Agent: Heirloom mailx 12.4 7/29/08
Content-Type: text/plain; charset=us-ascii
Status: R

this is a test mail

& 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值