Débarrassez-vous en toute sécurité de «Vous avez de nouveaux messages dans / var / mail» sur un Mac?

29

Il y a un an, je déconnais avec sendmail dans Rails et depuis, j'ai vu ce message apparaître dans le terminal après chaque commande:

Vous avez un nouveau courrier dans / var / mail / Lance

Comment puis-je m'en débarrasser correctement pour que le message disparaisse? J'utilise jamais l'une de ces fonctionnalités et je n'ai pas de courrier sur mon ordinateur. Il y a un fichier /var/mailappelé lance, et c'est énorme. Puis-je simplement le supprimer?

Quack Quichotte
la source
Jetez un œil au fichier - il contient le courrier non remis à l'utilisateur - et supprimez-le simplement si vous n'y trouvez rien d'utile.
Nikolai N Fetissov

Réponses:

36

La vieille école consiste à ouvrir un terminal et à utiliser

mail

à l'invite, puis

d

pour supprimer un message ou

d1-4

pour pour quatre messages.

ensuite

q

quitter.

Si vous ne voulez pas les supprimer non lus, tapez simplement Enterà l'invite de messagerie et il affichera chaque message tour à tour.

Utilisation

man mail

pour tous les détails.


Bien sûr, d'autres clients de messagerie plus sophistiqués peuvent être disponibles, mais cela le fera .

dmckee
la source
15
Ou d *pour tous les messages.
Nikolai N Fetissov
comment faire pour qu'il ne dise pas "Vous avez de nouveaux messages" à chaque fois que j'exécute une commande dans le terminal?
Lisez ou supprimez chaque message. S'il y en a plus et quelques-uns, lisez-en quelques-uns afin de savoir quel processus les envoie et arrêtez-les ...
dmckee
J'ai vérifié - j'avais 210 messages en attente, le dernier de janvier 2006, c'est-à-dire avant d'avoir acheté cet ordinateur! Le service de transfert de données était complet. J'ai utilisé d 1-210assez bien. Mais je n'ai rien eu à me rappeler.
Jonathan Leffler
3
assurez-vous de taper "q" ou vos suppressions ne seront pas enregistrées (je tapais "x" comme un crétin pendant 10 minutes)
longda
20

Dans votre ~/.bashrcajout:

unset MAILCHECK
En pause jusqu'à nouvel ordre.
la source
2
cela n'aidera pas à se débarrasser du fichier
line-o
~/.bash_profiledans Mavericks
geotheory
3
@geotheory Le choix entre .bashrcet .bash_profilen'est pas spécifique à la version de l'OS. Il s'agit plutôt de shells de connexion vs non-login . Voir ici pour plus de détails: joshstaiger.org/archives/2005/07/bash_profile_vs.html
user72923
Pour la coquille de poisson, ajouter set --erase MAILCHECKdans ~/.config/fish/config.fish.
Nick
Le désarmement MAILCHECKne semble pas fonctionner sur bash 4.4.12. Des idées?
1.61803
4

Vous pouvez simplement supprimer les messages de /var/mail/<user>, mais vous pouvez en obtenir davantage, par exemple à la suite de tâches cron. Vous pouvez à la place avoir ce courrier redirigé vers l'emplacement normal où vous lisez et stockez le courrier sur votre ordinateur avec un .forwardfichier. Créez simplement un fichier appelé qui contient le nom de fichier .forwarddans /Users/<username>/lequel vous souhaitez que le courrier soit stocké.

Par exemple, dans mon cas, je tire mon courrier de mon hôte en utilisant IMAP et le stocke /Users/ether/mail/i, j'ai donc un fichier appelé /Users/ether/.forwardqui contient la ligne:/Users/ether/mail/i

Éther
la source
Cette réponse sous-évaluée m'a conduit à une bonne solution pour ma question sous-jacente, qui était de savoir comment empêcher la notification d'apparaître sur macos, car je sais déjà que j'ai du courrier. J'ai essayé MAILCHECK et d'autres options en vain, mais rediriger le courrier vers un autre fichier a tué ces coups de coude, mais me permet toujours de consulter de temps en temps le courrier cron pour m'assurer que tout va bien.
abathur