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?
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.
Type mail
to view the mail. I believe d
deletes it.
q
after the d *
command, only that saves the changes to disk.
Mar 8, 2022 at 21:36
There are several ways to remove it. The simplest is:
> /var/mail/<whatever_user>
You need to include the '>'
Open mail
and then put in d *
and press Enter. The d
command means delete
and the *
selects all mails in the list.
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).
/var/mail
is a directory, and loyfe
is the file within it. To view the file, one could less /var/mail/loyfe
.
Jun 21, 2013 at 13:56
If you are running ClamAV for Mac this is a known issue. The system mails you after each update and scheduled scan.
There is a trick way.
: > /var/mail/$User
sudo chflags schg /var/mail/$User
As except "root", no one can change this file.
Then the annoying "You have mail" gone away.
I was able to just create a .hushlogin and I've a clean Terminal now.
$ touch .hushlogin