如何删除“您有邮件”的欢迎信息


39

当我打开终端时说“您有邮件”时,有人知道为什么吗?我正在运行OS X,但由于它也基于Unix,并且依赖于诸如bashrc,bash_profile等文件。我想这里的人可能知道,而且我不确定这是平台特定的问题!

Answers:


37

听起来好像有些东西已使用本地邮件交换器在(和)机器上发送了邮件。电子邮件很可能是来自某些已安装软件包的自动消息。登录后,mail在终端上键入内容以阅读和(大概)删除相关邮件。(在内部mail,使用?来查找命令是什么。)一旦您阅读或删除了所有未读邮件,您将不会再看到“您有邮件”消息,除非/除非其他人以相同的方式发送邮件。一旦您知道向您发送邮件的内容,您就可以找到一个配置选项来更改邮件的发送位置。


26

这是一个“特定于平台的问题” :-)

Mac OS X 与许多其他Un * x / Linux系统一样,将BASH用作默认外壳。

来自系统的邮件存储在用户的邮箱中,通常位于 /var/mail/$user

因为有时您的邮箱将包含重要消息(失败的cronjob任务等),所以您不必每次都自己检查它。

BASH(和许多其他Shell)具有称为mailcheck的功能,该功能在您第一次打开终端时输出您的消息。

$ MAILCHECK是一个环境变量,其中包含检查新邮件的秒数。在显示主要提示之前,还会检查邮件。查看更多Inman bash - Bash变量

为了防止检查新邮件,您可以简单地取消设置$ MAILCHECK。正确的位置是您的.bashrc文件,当您打开外壳程序时会读取该文件。它在您的用户主目录中。

附加到〜/ .bashrc:

unset MAILCHECK

禁用消息。

当然也可以简单地删除提到的TJ Crowder之类的邮件:-)


7

通过SSH使用Raspian(Raspberry Pi的基于Debian的发行版),我不得不在/etc/pam.d/sshd中注释掉以下行以摆脱它。

session    optional     pam_mail.so standard noenv # [1]

4
您能否就发现此事发表更多评论?这可能对有类似问题的人有所帮助。
vonbrand

我在邮件列表中找到了解决方案。作者说,他在/etc/pam.d/sshd中拨弄时偶然发现了这条线。我只知道这些。
Frode

这也为我在ubuntu上修复了它。
2013年

注释此行通过SSH在Ubuntu(DigitalOcean)和Debian(本地网络)上为我工作。我也禁用了motd。
thiagobraga

3

我和Debian有关系。我评论了报告的行插入#并解决了问题。

在Debian中编辑文件:

/etc/pam.d/sshd

文件中要注释的行:

session    optional     pam_mail.so standard noenv # [1]

1

运行crontab -e并将输出添加到您的cron作业中。如果您只想禁用一项cron作业的电子邮件,则需要/dev/null通过> /dev/null 2>&1在行末添加来将其输出重定向到。

例如:

* * * * */5 /path/to/command arguments > /dev/null 2>&1
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.