您好,欢迎来到99网。
搜索
您的当前位置:首页Linux mail 命令

Linux mail 命令

来源:99网

在Linux系统下mail命令的测试

1. 最简单的一个例子:

mail -s test yangfang@fudan.edu.cn

这条命令的结果是发一封标题为test的空信给后面的邮箱,如果你有mta并且后面的邮箱不会挡这种可能莫名奇妙的信的时候,就能收到这封信了。如果你不想被这种乱七八糟的事情干扰,后面的邮箱请使用本地帐户。

2. 第二个例子:

三种常用格式发信

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从标准输入读取文件内容并发信,我也只想让你知道这一点,到此,第二个例子结束。

3. 第三个例子,带附件的邮件

如果你的系统里没有uuencode命令的话,请先安装sharutils(yum install sharutils)

uuencode 需要两个参数,第一个是你要发送的文件(们),当然这个也可以用管道来做,第二个是显示的文件名

uuencode /home/yfang/a.gif a.gif|mail -s pictest yangfang@fudan.edu.cn

tar czf - /home/yfang/ | uuencode home.tgz |mail -s pictest yangfang@fudan.edu.cn

ps: 顺便补一句,slackware下的mail好像有一个-a参数,可以直接添加附件,我没有用过。

转自:http://www.svn8.com/linux/accidence/20091016/10858.html

Linux下Mail命令收集2007-10-28 10:01系统收到邮件都会保存在“/var/spool/mail/[linux用户名]”文件中。
在linux中输入mail,就进行了收件箱,并显示二十封邮件列表。

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

2. 传送电子邮件给本系统用户
语法:mail 用户名

例如:
mailtest@hotmail.com
Subject : mail test
:
键入信文内容
: :
按下Ctrl+D 键或. 键结束正文。
连按两次Ctrl+C键则中断工作,不送此信件。


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

4. 检查所传送的电子邮件是否送出,或滞留在邮件服务器中
语法:/usr/lib/sendmail -bp
若屏幕显示为“Mail queue is empty” 的信息,表示mail 已送出。
若为其他错误信息,表示电子邮件因故尚未送出。

=================================

Linux下mail使用技巧
登录LINUX系统后,经常会看到"you have mail",却苦于不知道如何查看,相信菜鸟们都遇到过,偶在网上用“linux mail"找了很久,但大都是介绍mail服务器的,黄天总算没负有心人,在洪恩在找到一篇介绍基础的文章,不敢独享。

系统提供了用户之间通信的邮件系统,当用户打开终端注册登录时发现系统给出如下信息:
     you have mail.

    这时用户可通过键入mail命令读取信件:

    $ mail

     mail程序将逐个显示用户的信件,并依照时间顺序,显示最新的信件。每显示一段信件,mail都询问用户是否要对该信件作些处理。若用户回答d,则表示  删除信件;若仅按回车键,表示对信件不作任何改动(信件仍旧保存,下次还可读这一信件);若回答p,则要求重复显示信件;s  filename表示要把信件存入所命名的文件;若回答q,表示要从mail退出。

    我们在本章的第一个例子中演示了如何写一封信,作为练习,你可送信件给自己,然后键入mail读取自己发的信件,看看会有什么效果。(发信给自己是一种设置备忘录的方法)。

    $mail frank 给自己写信

    subject: test

    This is a mail test

    CRL-d

    EOT

    $

    $mail 查看信件

    “/var/spool/mail/frank:”1 message 1 new

    >Nfrank@xteam.xteamlinux.comThu Mar 25 11:00 13/403 “test”

    &

    Message 1:

    From frank Thu Mar 25 11:00:25 1999/3/25

    Received: (fromfrank@localhost)

    by xteam.xteamlinux.com(8.8.4/8.8.4)

    id LAA05170 for frank;Thu 25 Mar 1999 11:00:25 GMT

    Date: Thu,25 Mar 1999 11:00:25 GMT

    From:RHS Linux User <root@newtradepowre.com>

    Message-Id:<199903251142.LAA05170@xteam.xteamlinux.com>

    To:frank@xteam.xteamlinux.com

    Subject:test

    Status:R

    This is a mail test

    &

    mail命令还有很多其它用法,例如发送事先准备好的信件,或一次送信给若干人。还可以用其它方法送信件。

另附message的使用技巧:

当Linux系统处于多用户的情况下,有时在终端上会突然显示出下述信息:

    Message from renee tty2…

    并伴随出现一阵嘟嘟响声。这是用户renee想和你通话而产生的信号。若你用如下命令响应他:

    $ write renee

     这就建立起了你和renee的通信线路,renee在他的终端上键入的内容同时显示在你的终端上,反之你键入的内容也显示在renee的终端上。为区分终  端上哪些是你输入的,哪些是renee输入的,我们使用如下通话协议:(o)表示一段话说完,并让对方发话,(oo)代表通话结束并退出程序。

    renee’s terminal: frank terminal:

    [renee@xteam renee]$ write frank

    $ Message from renee tty2…

    $write renee

    [renee@xteam renee]$Message from you tty1…

    did you forget lunch? (o)

    did you forgeet lunch? (o)

    ten minutes (o)

    ten minutes (o)

    ok (oo)

    ok (oo)

    ctl-d

    EOF

    Ctl-d

    EOF

    [renee@xteam renee]$ $

     除CTL-d键外,也可以使用DELETE退出write命令。

    如果你不愿意别人干扰你的工作,可以使用mesg命令拒绝接受通话。当你向一个拒绝接收通话的用户发写命令、或者向没有注册的用户要求通话时,write命令会显示不能通话的原因。

 

[转载声明] 转载时必须标注:本文来源于铁木箱子的博客http://www.mzone.cc
[本文地址] 本文永久地址是:

      因为需要经常备份网站的数据,所以了解并学习了下linux下如何通过shell来发送邮件,这里以CentOS为例,使用mail命令来进行外部邮件的发送。mail命令的语法如下:

        
        

      使用mail命令发送邮件,有如下三种方式:

1、直接使用shell当编辑器

        
        
  1. mail -s "Hello from mzone.cc by shell" admin @mzone.cc
  2. hello,this is the content of mail.
  3. welcome to www.mzone.cc

2、使用管道进行邮件发送

        
        
  1. echo "hello,this is the content of mail.welcome to www.mzone.cc" | mail -s "Hello from mzone.cc by pipe" admin @mzone.cc

      使用管道直接敲入这行命令即可完成邮件的发送,其中echo后的是邮件正文。

3、使用文件进行邮件发送

        
        
  1. mail -s "Hello from mzone.cc by file" admin @mzone.cc < mail.txt

      使用上面的命令后,我们就可以把mail.txt文件的内容作为邮件的内容发送给admin@mzone.cc了。

      使用上述三种方式都可以给外部邮箱进行邮件发送,但因为前面2中都是直接在shell中敲入邮件内容,因此无法输入中文,即使我们使用粘贴的方式输入了中文,那么收到的邮件也是乱码的。但第3种方式,我们可以在window下编辑好邮件内容后,放到linux下,再进行发送,这样就可以正常发送中文了。不过目前邮件的中文标题暂时没有找到解决办法。

      因为mail程序本身就是调用sendmail来进行邮件发送的,因此我们可以在mail命令中使用sendmail的参数进行配置,比如我想使用特定的发件人发送邮件,可以使用如下命令:

        
        
  1. mail -s "Hello from mzone.cc with sender" admin @mzone.cc -- -f user @mzone.cc <mail.txt

      很多情况下,我们也需要使用邮件来发送附件,在linux下使用mail命令发送附件也很简单,不过首先需要安装uuencode软件包,这个程序是对二进制文件进行编码使其适合通过邮件进行发送,在CentOS上安装该软件包如下:

        
        
  1. yum install sharutils

      安装完成后我们就可以来进行附件的发送了,使用如下命令:

        
        
  1. uuencode test.txt test | mail -s "hello,see the attachement" admin @mzone.cc <mail.txt

      完成后就可以把text.txt文件作为邮件的附件发送出去了。uuencode有两个参数,第一个是要发送的文件,第二个是显示的文件名称。

      有了这个mail命令,我们在linux下操作又多了一把利器了,perfect ^_^

 

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- 99spj.com 版权所有 湘ICP备2022005869号-5

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务