zoukankan      html  css  js  c++  java
  • liunx 内置mail 发送邮件

    
    

    邮件配置文件/etc/mail.rc 

    [root@001 ~]# vim /etc/mail.rc #添加、修改如下内容
    set from=xxxx@126.com
    set smtp=smtp.126.com
    set smtp-auth-user=xx@126.com
    set smtp-auth-password=xxx
    set smtp-auth=login

    配置说明:

    from:对方收到邮件时显示的发件人

    smtp:指定第三方发邮件的smtp服务器地址

    set smtp-auth-user:第三方发邮件的用户名

    set smtp-auth-password:用户名对应的密码,有些邮箱填的是授权码

    smtp-auth:SMTP的认证方式,默认是login,也可以改成CRAM-MD5或PLAIN方式

     

    -----------------------------------------------------------------------------------------------------------------

    发送邮件

    -s 后面是邮件的主题,主题后面是目标邮件地址,当编辑完成之后使用Ctrl+D退出,同时邮件也会被发送出去

    [root@centos6 ~]# mail -s "Lucky mail" 收件人地址
    Hi Tomas,
    Thank you for you help!
    Regards,
    Daniel

    # 错误提示
    send-mail: warning: inet_protocols: IPv6 support is disabled: Address family not supported by protocol
    send-mail: warning: inet_protocols: configuring for IPv4 support only
    postdrop: warning: inet_protocols: IPv6 support is disabled: Address family not supported by protocol
    postdrop: warning: inet_protocols: configuring for IPv4 support only
    # 提示只支持IPV4
    vim /etc/postfix/main.cf
    inet_protocols = all  修改配置为 inet_protocols = ipv4

    postfix启动服务  # 这里根据自己的邮箱服务,这里我的是postfix ,有的是使用的sendmail 

      /etc/init.d/postfix  start  或者 service postfix start  

           直接发送邮件

    mail -s "邮件主题"  收件人地址   # 回车

    邮件内容  # 回车
    ctrl+D 结束并发送邮件

    第一行是输入的命令,-s表示邮件的主题,后面的是邮件的接收人,输入完这行命令后回车,会进入邮件正文的编写,我们可以输入任何文字。

    当邮件正文输入完成后,需要按CTRL+D结束输入,此时会提示你输入Cc地址,即邮件抄送地址,没有直接回车就完成了邮件的发送。


      使用管道进行邮件发送

        echo "邮件正文" | mail -s "邮件主题"  mailaddress@linuxde.net
        使用管道直接敲入这行命令即可完成邮件的发送,其中echo后的是邮件正文。

    使用文件进行邮件发送
      mail -s "邮件主题" admin@linuxde.net < mail.txt
      使用上面的命令后,我们就可以把mail.txt文件的内容作为邮件的内容发送给admin@linuxde.net了。


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

    在CentOS上安装该软件包如下: yum install sharutils

    安装完成后我们就可以来进行附件的发送了,

    使用如下命令: uuencode test.txt test | mail -s "hello,see the attachement" admin@linuxde.net

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

    ------------------------------------------------------------------------------------------------------------

    查看邮件 $ mail

    mail程序将逐个显示用户的信件,并依照时间顺序,显示最新的信件。

    每显示一段信件,mail都询问用户是否要对该信件作些处理。

    若用户回答d,则表示删除信件;若仅按回车键,表示对信件不作任何改动(信件仍旧保存,下次还可读这一信件);

    若回答p,则要求重复显示信件;s filename表示要把信件存入所命名的文件;

    若回答q,表示要从mail退出。

    > 表示当前邮件    U 表示未读

    & p   显示当前邮件

    & 2    读取第2个的邮件

    其他常用参数: 
    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中删除文件才会彻底删除。

    -------------------------------------------------------------------------------------------------------

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

        关闭系统发送邮件

      echo "unset MAILCHECK" >> /etc/profile

  • 相关阅读:
    HDU 1022 Train Problem I
    HDU 1702 ACboy needs your help again!
    HDU 1294 Rooted Trees Problem
    HDU 1027 Ignatius and the Princess II
    HDU 3398 String
    HDU 1709 The Balance
    HDU 2152 Fruit
    HDU 1398 Square Coins
    HDU 3571 N-dimensional Sphere
    HDU 2451 Simple Addition Expression
  • 原文地址:https://www.cnblogs.com/xuey/p/7649306.html
Copyright © 2011-2022 走看看