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

43 bash login terminal email

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

T.J*_*der 41

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


ech*_*hox 31

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

Mac OS X像许多其他 Un*x/Linux 系统一样使用BASH作为默认 shell 。

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

因为有时你的邮箱会包含重要的消息(一个失败的 cronjob 任务等)你不必每次都自己检查它。

BASH(和许多其他 shell)有一个名为 mailcheck 的功能,它会在您第一次打开终端时输出您的消息。

$MAILCHECK 是一个环境变量,它包含检查新邮件的时间。在显示主要提示之前还会检查邮件。见多man bash- bash的变量

要防止检查新邮件,您可以简单地取消设置 $MAILCHECK。正确的位置是您的 .bashrc 文件,它会在您打开 shell 时被读取。它在您的用户主目录中。

附加到 ~/.bashrc:

unset MAILCHECK
Run Code Online (Sandbox Code Playgroud)

禁用该消息。

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


小智 7

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

session    optional     pam_mail.so standard noenv # [1]
Run Code Online (Sandbox Code Playgroud)

  • 您能否就您是如何发现这一点发表更多评论?可能对有类似问题的人有所帮助。 (4认同)