https://tecadmin.net/ways-to-send-email-from-linux-command-line/

We all know the importance of emails these days for information transfer. There are many free emails service providers which we used for use like Gmail, Yahoo, RediffMail etc, which provides a web interface for sending and receiving emails. But this is not enough, sometimes we also required to send emails from system command line. This tutorial will provide you the ways to send emails from Linux command line. This is useful for sending email through our shell scripts, cron jobs etc.

There are various ways to send emails from the command line but here I am sharing few options used by most users. You can use anyone option given below to send email from Linux command line.


1. Using ‘sendmail’ Command

Sendmail is a most popular SMTP server used in most of Linux/Unix distribution. Sendmail allows sending email from command line. Use below instructions to send email using ‘sendmail‘ command.

Create a file using following content.

[root@tecadmin ~]# cat /tmp/email.txt

Subject: Terminal Email Send

Email Content line 1
Email Content line 2

Subject: line will be used as subject for email.

Now send email using the following command.

[root@tecadmin ~]# sendmail user@example.com  < /tmp/email.txt

Read more: Install and Configure Sendmail on CentOS/RHEL


2. Using ‘mail’ Command

mail command is most popular command to send emails from Linux terminal. Use few of below examples to send an email.

[root@tecadmin ~]# mail -s "Test Subject" user@example.com < /dev/null

-s is used for defining subject for email.

Also, you can send the email with an attachment.

# mail -a /opt/backup.sql -s "Backup File" user@example.com < /dev/null

You may face issue: Bash: mail: command not found

-a is used for attachments

Also, we can add comma separated emails to send the email to multiple recipients together.

# mail -s "Test Email"  user@example.com,user2@example.com < /dev/null

3. Using 'mutt' command

Mutt is basically used for reading mails from Linux terminal from local user mail boxes, also useful to read emails from POP/IMAP servers. Mutt command is little similar to mail command. Use few of below examples to send email.

# mutt -s "Test Email" user@example.com < /dev/null

Send email including attachment

# mutt  -s "Test Email" -a /opt/backup.sql user@example.com < /dev/null

4. Using 'SSMTP' Command

sSMTP allows users to send emails from SMTP server from Linux command line. For example to send an email to user admin@example.com use following command. Now type your subject of the email as below with keyword Subject. After that type your message to be sent to the user, After finishing your message press CTRL+d (^d) to send the email.

# ssmtp admin@example.com
Subject: Test SSMTP Email
Email send test using SSMTP
via SMTP server.
^d

Read more: How to Setup SSMTP Server on Linux


5. Using 'telnet' Command

As my experience all system administrators use telnet command to test remote port connectivity test or login to server remotely. Most of newbie in Linux doesn't know that we can send email using telnet also, which is better way to trouble shoot email sending problems. Below is an example of email sending.

Red marked text is the user input and remaining is the responses of that commands.

# telnet localhost smtp

Trying 127.0.0.1...
Connected to localhost.localdomain (127.0.0.1).
Escape character is '^]'.
220 fbreveal.com ESMTP Sendmail 8.13.8/8.13.8; Tue, 22 Oct 2013 05:05:59 -0400
HELO yahoo.com
250 tecadmin.net Hello tecadmin.net [127.0.0.1], pleased to meet you
mail from: sender@tecadmin.net
250 2.1.0 sender@tecadmin.net... Sender ok
rcpt to: myemail@ymail.com
250 2.1.5 myemail@ymail.com... Recipient ok
data
354 Enter mail, end with "." on a line by itself
Hey
This is test email only Thanks
.
250 2.0.0 r9M95xgc014513 Message accepted for delivery
quit
221 2.0.0 fbreveal.com closing connection
Connection closed by foreign host.

Thank you for using this article. We will add more ways soon with this list. We also request you to help me with more commands which you know and not listed above.

http://blog.csdn.net/ithomer/article/details/6776067

linux shell 发送email 邮件

sendmail -s 'Test mail'  toywei@dingtalk.com < mail.m

最新文章

  1. Linq to SQL 的增删改查操作
  2. 让你的CI跑起来-《持续集成》读书总结
  3. WCF入门(9)
  4. struts2项目需要加入的jar包
  5. 如何寻找设计灵感?写给刚入行的设计师(转自UI中国)
  6. JsonUtil对象与json互转
  7. 微软企业库Microsoft Enterprise Library的相关文章链接
  8. CakePHP 2.x 升级3.0
  9. mac 显示隐藏文件方法
  10. 用cas来实现php的单点登陆
  11. FreeRTOS——错误排查
  12. 双向链表--Java实现
  13. python简单分布式demo
  14. .NET Core多平台开发体验[4]: Docker
  15. 重写Java中包装类的方法
  16. Linux学习-实验楼(1)
  17. 详解Makefile 函数的语法与使用 (转)
  18. openal支持的通道数和声道数
  19. Unity和虚幻的比较
  20. CXSprite.h文件

热门文章

  1. 【Eclpise】Eclipse中Tomcat启动失败或者是重启失败
  2. 電池的標稱電壓 與 power consumption 量測
  3. webUpload上传插件的一些bug
  4. C# Array类的浅复制Clone()与Copy()的区别
  5. sql server 2008导入和导出sql文件
  6. 模块化开发(seajs)
  7. 新华三孟丹:NFV资源池实现中的技术探讨
  8. Objc的底层并发API(转)
  9. scp 时出现permission denied
  10. python matplotlib 绘图 和 dpi对应关系