• Linux学习笔记(24)linux发邮件 mailx发邮件


    【1】下载 malix

    yum install -y mailx

    【2】修改配置文件 etc / mail.rc  

    vim etc / mail.rc  

    在文末添加行

    set from=your_username@emailaddress
    set smtp=60.191.38.219
    set smtp-auth-user=your_username
    set smtp-auth-password="your password"
    set smtp-auth=login

    值得注意的是配置时“=”两侧不要有空格

    实际案例如下:

      

     参数释义:

    set from = 163邮箱地址

    set smtp = smtp.163.com#此处不做改变

    set smtp-auth-user = 163邮箱地址#与从一致即可设置

    set smtp-auth-password =设置的授权码

    set smtp-auth =登录#默认登录即可

    【3】基本测试验证

    echo TEST| mail -s"test" a@qq.com

    收到 

     

    【4】更多使用语法

    (4.1)最佳实践

    命令行方式

      mailx -s "标题名" 目标邮箱地址 ,按回车后输入邮件内容,按Ctrl+D完成输入,完成发送。

    管道方式

      echo "内容" | mail -s "主题" 收件地址

    (1)有邮件正文:

    mail -s "主题" 收件地址<文件
    echo "邮件正文" | mail -s 邮件主题 收件地址
    cat "邮件正文" | mail -s 邮件主题 收件地址

    (2)带附件

    mail -s "主题" 收件地址 -a 附件 <文件地址
    # mailx -s "test" -a 1.txt 'mytest@ywnz.com' < 2.txt #test为标题, 1.txt附件, 2.txt正文, 发送给mytest@ywnz.com

    (3)发送给多个收件人

    默认以逗号为分隔符,抄送的话 则是 -c

    # mailx -s "test" -a 1.txt 'a@qq.com,b.qq.com'

    四、整合

    (4.2)详细参数

    -A:执行帐户的命令的名称启动文件被读取之后。
    -a:给定的文件附加到邮件中。
    -B:使标准输入和标准输出线-缓冲。
    -b:发送密件副本列表。列表应该是一个逗号分隔的名称列表。
    -c:送炭复制到地址列表。
    -D:开始在断开模式; 看到断开的变量的描述选项。
    -d:启用调试消息和关闭消息的实际交付。 不像-v,此选项仅用于开发目的。
    -e:只是检查是否有邮件系统邮箱。 如果是,返回零,否则,一个非零值退出状态。
    -E:如果传出消息,不包含在它的第一个或唯一的消息部分的任何文字,不要把它丢弃,但它静静地,有效地设置在程序启动时的skipemptybody变量。这是一个从发送消息有用 的脚本由启动cron的。
    -f:阅读在用户的邮箱中的内容(或文件时 ,如果指定)进行处理; 当mailx的是退出,将其写入未删除的邮件恢复该文件。 该字符串作为文件处理描述为文件夹命令如下。
    -F:保存要发送的消息中的第一个收件人的地址的本地部分命名的文件。
    -H:打印头汇总所有消息并退出。
    -h:调用的sendmail与指定的跃点数。此选项没有在使用SMTP发送邮件的效果。
    -i:TTY忽略中断信号。使用mailx的对噪音的电话线时,这是非常有用的。
    -I:显示了“ 新闻组:'' 文章ID:'在标题汇总字段。只有在与-f结合使用时适用。
    -n:禁止阅读/etc/mail.rc启动时。这个选项应该适用于对多台计算机调用mailx的脚 本来启动,因为文件的内容,它们之间可能有所不同。
    -N:阅读邮件或编辑邮件文件夹时禁止消息头的初始显示。
    -q:启动与指定的文件的内容的消息。 可仅在发送模式给出。
    -r:设置发件人地址。忽略任何从指定的变量环境变量或启动文件。波浪号逃逸被禁用。该-r地址选项被传递到邮件传输代理,除非使用SMTP。此选项存在唯一的相容性;它建议,而不是直接设置从变量。
    -R:如果打开文件夹的只读打开它们。
    -s:指定主题的命令行(仅后-s标志作为主题的第一个参数,要注意引用包含空格的科目)。
    -S:设置内部选项变量变量的可选值的价值 。
    -T:写“ 邮件ID:”和“ 文章ID:'读入文件名 ??的每个消息头字段。暗示我压缩文件的处理所描述的文件夹命令如下。
    -t:要发送的消息,预计将包含一个消息头“收件人:”,“抄送”或“密件抄送:”字段给收件人。 在命令行上指定的收件人将被忽略。
    -u:读取用户的用户的邮箱。
    -v:详细模式。 递送的详细信息显示在用户的终端上。
    -V:显示版本信息并退出。
    - ?:启用波浪逃逸 ,即使不是在交互模式。
    
    命令内说明
    
    . 当前信件
    n 第 n 封信
    ^ 第一封未被处理的信
    $ 最后一封信
    * 所有的信
    n-m 第n封至第m封信
    / 字符串 标题中包含字符串的信
    :c 满足指定类型c的信,类型可为
    d 已删除的信
    n 信传送的信
    o 旧信件
    r 已读过的信
    u 未读过的信
    p 一次显示多封信
    t 显示某封信的前若干行
    si 显示信件字符数
    h 显示信件标题
    d 删除信件
    u 恢复信件
    s [信件表] 文件名
    将信件存入指定文件中
    q 退出
    r 回信
    ~e 编辑信件
    ~r 文件 从文件中读取信件

    【参考文档】含授权码使用办法

    含授权码使用办法:https://blog.csdn.net/qq_35458793/article/details/84643813

     

  • 相关阅读:
    商场活动|简单易用|可下载试用|复用转盘抽奖软件
    js dictionary
    财务大写
    SET ANSI_NULLS ON ……
    批量生成clr脚本
    Git
    CTE递归查询
    jquery 巧用json传参
    个人犯的一个golang routine错误
    .NET实现自动编译
  • 原文地址:https://www.cnblogs.com/gered/p/15818869.html
Copyright © 2020-2023  润新知