Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Any idea why my Mac terminal says:

You have mail in /var/mail/lofye

How can I make it stop saying that every time I open terminal?

share|improve this question

7 Answers 7

up vote 55 down vote accepted

Somehow you've had a script or something similar deliver mail to your account on your local machine which is stored in /var/mail/$USER

You can either remove the file /var/mail/$USER which will remove the alert that you have mail (as it will alert you if that folder is present and/or has unread messages) or you can use mail to read the messages before deleting them.

share|improve this answer
5  
Thanks for the tip. Turns out a CRON is mailing me... 36,061 times :( Deleted with command: d 1-36061 –  lo_fye Aug 19 '09 at 15:15
5  
See this question. superuser.com/questions/7677/stop-cron-from-emailing-me –  Richard Hoskins Aug 19 '09 at 16:45
    
You can direct the cron output to /dev/null to avoid the mail. –  Chris Nava Aug 19 '09 at 19:18
1  
Where is this default text located on Mac OS X? I'd like to leave it active but change the message. –  user114114 Jan 17 '12 at 21:20

I'm willing to bet it's because there are files in that folder.

Have you actually looked at the contents of the folder? If there is something in there, it will more than likely give you an idea of what caused it, and how to prevent it in the future.

From the terminal:

cd /var/mail/lofye
ls

If you don't have mail, you won't see the message (there's not even a folder for my username under mail on my mac).

share|improve this answer
2  
/var/mail is a directory, and loyfe is the file within it. To view the file, one could less /var/mail/loyfe. –  Thomas Hunter Jun 21 '13 at 13:56

type mail to view the mail. I believe d deletes it

share|improve this answer
1  
* d should delete everything. –  Lee Aug 19 '09 at 15:11
3  
When using mailx d* will delete everything. Mail itself won't. –  Diago Aug 19 '09 at 15:46
    
Doing mail and then d * removed all mails for me on Mac OS X. –  yagooar Nov 13 at 13:11

There are several ways to remove it. The simplest is:

> /var/mail/<whatever_user>

You need to include the '>'

share|improve this answer
4  
That wipes out the received mail for that user. –  vonbrand Mar 31 '13 at 14:33

If your running ClamAV for Mac this is a known issue. The system mails you after each update and scheduled scan.

share|improve this answer

Open mail and then put in d * and press Enter. The d command means delete and the * selects all mails in the list.

share|improve this answer
    
Welcome to SuperUser. This answer would be even better if you edit it to provide some explanation as to why your solution addresses the OPs question. –  Twisty Nov 13 at 14:42

I was able to just create a .hushlogin and I've a clean Terminal now.

$ touch .hushlogin
share|improve this answer
1  
This prevents many messages from being displayed, not just the new mail message. This could be dangerous as there are certain other warnings the user would miss out on. –  Thomas Hunter Jun 21 '13 at 13:59

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.