4

I have questions about mail,

  1. I am using following command on my linux account of my compnay

    mail -s 'Hi' username@gmail.com

But I dont receive any emails, where as did not receive any error while executing the above command, so whats going on and what is happening.

  1. what email id do mail use to send the email by default. Is there any way or command to print this by default user id.

2 Answers2

7

mail is a mail user agent (MUA), you also need a mail tranport agent (MTA), such as postfix, to deliver non-local mail. The MTA has to be configured appropriately, many ISPs require that mail be routed through their mail servers. This usually means configuring your MTA to treat theirs as smarthosts or relays rather than attempting to deliver mail directly to the mailserver for the recipient's domain.

Have you checked your MTA configuration and checked your logfiles for messages about delivery failures.

0

Suggestions:

You need to hit enter, then put a . on the next line, then hit enter again and the mail should get sent. Like so:

[root@host ~ ]# mail -s "test" me@gmail.com
This will be in the body of the email
Cc: me_cc@gmail.com
.
[root@host ~ ]# 

The . on its own line tells the mail command that you are done writing the body of the email and acts as an EOF for the command.


Another way to do it is:

[root@host ~ ]# echo "This will be the body of the email" | mail -s "This is the subject" me@gmail.com

And another method:

[root@host ~ ]# mail -s "This is the subject" me@gmail.com < /home/me/fileText_for_emailBody.log

This uses the contents of /home/me/fileText_for_emailBody.log as the body of the email.

chown
  • 2,227