设为首页 收藏本站
查看: 1559|回复: 0

[经验分享] Linux mail命令使用和sendmail配置

[复制链接]

尚未签到

发表于 2015-11-25 13:15:11 | 显示全部楼层 |阅读模式
  from: http://www.server110.com/sendmail/201311/3566.html

  linux mail 命令参数:
  使用mail发邮件时,必须先将sendmail服务启动。
  mail –s “邮件主题” –c”抄送地址” –b “密送地址” -- -f 发送人邮件地址 –F 发件人姓名 <要发送的邮件内容
  
  三种常用&#26684;式发信
  

  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 &quot;just a test&quot; 收信人邮箱地址 < 要发送的邮件内容文件 -- -f 发送人邮件地址 -F发件人姓名
  效果是: 信件内容将发送给 收信人邮箱,显示的发送人为 发送人姓名<发送人邮件地址>,显示的内容为发送的邮件内容...
  包含命令执行结果的MAIL发送:
  echo -e `ls /tmp`|mail -s &quot;test&quot; 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 &quot;主旨&quot; abc@xxx.com fff@xxx.com
  
  如果需要发送附件需要安装uuencode来编码 (yum install sharutils)
  
  单独发附件,这样xxxx@xxx.com会收到一个data.txt的附件
  uuencode /tmp/data_process.log  data.txt |mailxxx@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 阅读当前指针所在的邮件内容 阅读时,按空&#26684;键就是翻页,按回车键就是下移一行
  
  t|type|more|p|page num 阅读某一封邮件
  
  n|next|{什么都不填} 阅读当前指针所在的下一封邮件内容阅读时,按空&#26684;键就是翻页,按回车键就是下移一行
  
  v|visual 当前邮件进入纯文本编辑模式
  
  n|next|{什么都不填} num 阅读某一封邮件
  
  top 显示当前指针所在的邮件的邮件头
  
  file|folder 显示系统邮件所在的文件,以及邮件总数等信息
  
  x 退出mail命令平台,并不保存之前的操作,比如删除邮件
  
  q退出mail命令平台,保存之前的操作,比如删除已用d删除的邮件,已阅读邮件会转存到当前用户家目录下的mbox文件中。如果在mbox中删除文件才会彻底删除。在linux文本命令平台输入 mail -f mbox,就可以看到当前目录下的mbox中的邮件了。
  
  cd 改变当前所在文件夹的位置
  
  写信时,连按两次Ctrl&#43;C键则中断工作,不送此信件。
  
  读信时,按一次Ctrl&#43;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&#43;D 键或. 键结束正文。
  连按两次Ctrl&#43;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.comsetsmtp-auth-user=username smtp-auth-password=passwordsetsmtp-auth=login
  说明:
  
  from是发送的邮件地址
  
  smtp是发生的外部smtp服务器的地址
  
  smtp-auth-user是外部smtp服务器认证的用户名
  
  smtp-auth-password是外部smtp服务器认证的用户密码
  
  smtp-auth是邮件认证的方式
  
  配置成功后,就可以使用了
  
  可以发送一封邮件测试一下:
  
  mail -s &quot;test&quot; user@sohu.com <content.txt其中-s后面的是邮件标题,user@sohu.com是收件人地址,content.txt里面是邮件正文

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-143429-1-1.html 上篇帖子: LINUX-sendmail 下篇帖子: 内网配置sendmail服务器
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表