Mensaje "Tienes correo" en la terminal, os X [cerrado]


170

Hace unos días recibí este mensaje en mi ventana de terminal: ingrese la descripción de la imagen aquí

Qué significa eso? Nunca he visto eso antes.

Eso fueron mensajes de bots xCode.

bots

Gracias por la ayuda.


11
Corre maily lee tu correo.
Blender

En primer lugar, no tengo ningún correo sin leer. Por segundo, ¿por qué esta cadena apareció ahora? Nunca la he visto antes.
Oleg Sobolev

2
Esta pregunta parece estar fuera de tema porque es más adecuada para apple.stackexchange.com
Monolo

Respuestas:


60

Probablemente sea un mensaje de su sistema.

Escriba en la terminal:

man mail

y vea cómo puede obtener este mensaje de su sistema.


¿Qué dirección de correo electrónico está usando?
AbhimanyuAryan

44
y luego escriba "d *" para borrar todos los mensajes
Ricardo Martins

9
Vaciar accidentalmente /var/mail/<your-username>una vez que llega un correo (que aún no se ha leído) puede activarse You have mailcada vez que abra una nueva pestaña en la Terminal (que me sucedió una vez). Para resolver este problema, es necesario eliminar el archivo (es decir sudo rm /var/mail/<your-username>).
Muntashir Akon

44
Esto no responde la pregunta.
minatverma

272

También tenía este problema de "Tienes correo" cada vez que iniciaba Terminal.

Lo que descubrí es esto.

Algo que instalé (no estoy completamente seguro de qué, pero posiblemente un script o algo asociado con un flujo de trabajo de Alfred [supongo]) realizó un cambio en el sistema OS X para comenzar a presentar notificaciones de bash de Terminal. Antes de eso, parece que Wordpress había intentado usar el sistema de correo local para enviar un mensaje. El mensaje rebotó debido a que tiene una dirección de destinatario no válida. El mensaje devuelto terminó en la bandeja de entrada del correo del sistema local. Entonces Terminal (bash) me estaba notificando que "Tienes correo".

Puede acceder al correo simplemente usando el comando

mail

Esto lo lanza a Mail y enseguida le mostrará una lista de mensajes que están almacenados allí. Si desea ver el contenido del primer mensaje, use

t

Esto le mostrará el contenido del primer mensaje, en su totalidad. Tendrá que desplazarse hacia abajo por el mensaje para verlo todo, down-arrowpresionando la tecla.

Si desea saltar al final del mensaje, use el

spacebar

Si desea cancelar la visualización del mensaje, use

q 

Para ver el siguiente mensaje en la cola, use

n

... suponiendo que haya más de un mensaje.

NOTA: debe usar estos comandos en el ?símbolo del sistema de correo . No funcionarán mientras estás en el proceso de ver un mensaje. Golpear nmientras ve un mensaje solo causará un mensaje de error relacionado con las expresiones regulares. Entonces, si en medio de la visualización de un mensaje, presione qpara salir de eso, o presione spacebarpara saltar al final del mensaje, y luego en el ?indicador, presione n.

Ver el contenido de los mensajes de esta manera puede ayudarlo a identificar lo que intentó enviar los mensajes.

También puede ver un mensaje específico simplemente ingresando su número en el ?indicador. 3, por ejemplo, le mostrará el contenido del tercer mensaje (si hay tantos allí).

Use el comando (en el ?símbolo del sistema)

d [message number]

Para eliminar cada mensaje cuando haya terminado de mirarlos. Por ejemplo, d 2eliminará el mensaje número 2. O puede eliminar una lista de mensajes, como d 1 2 5 7. Verá los números de mensaje en la lista de mensajes que le muestra el correo.

Para eliminar todos los mensajes, desde el indicador de correo ( ?) use el comando d *.

Según un comentario en esta publicación, deberá usar qpara salir del correo, lo que también guarda los cambios.

Si desea ver el correo todo en una salida, use este comando en el indicador de bash (es decir, no desde el correo, sino desde el símbolo del sistema normal):

cat /var/mail/<username>

Y, si desea eliminar todos los correos electrónicos de una sola vez, use este comando

sudo rm /var/mail/<username>

En mi caso particular, hubo una serie de mensajes. Parece que fue un mensaje devuelto que rebotó. Fue enviado por una instalación local de Wordpress. Era una notificación para cuando el usuario "Admin" (yo) cambió su contraseña. Dos mensajes adicionales donde hay. Ambos parecían estar en el mismo incidente.

Lo que no sé, y tampoco puedo responder por usted, es POR QUÉ Hace poco comencé a ver esta notificación por correo cada vez que abro Terminal. Los correos se generaron hace un par de meses y, sin embargo, solo noté que este "usted tiene correo" apareció en las últimas semanas. Sospecho que es el resultado de algo, un flujo de trabajo que instalé en Alfred, y ese flujo de trabajo usando Terminal bash para proporcionar notificaciones ... o algo por el estilo.

Simplemente borrando los mensajes

Si no tiene interés en determinar la fuente de los mensajes, y solo desea deshacerse de ellos, puede ser más fácil hacerlo sin usar el mailcomando (que puede ser algo complicado). Como señalaron algunas otras personas, puede usar este comando en su lugar:

sudo rm /var/mail/YOURUSERNAME

12
Tenga en cuenta que necesitará usar q para salir del correo y guardar los cambios en el disco
storm_m2138

Los comandos 'n' y 'd' que siguen a 't' para mostrar el primer mensaje no funcionan como usted me describe. 'd' simplemente parece desplazarse, y 'n' tiene algo que ver con expresiones regulares.
Nathan Hornby

@NathanHornby Deberá usar ese comando una vez que regrese al ?símbolo del sistema. tle dará una lectura completa del primer mensaje, con un :mensaje si el mensaje desborda cierta cantidad de salida. Al presionar cualquier tecla, continuará mostrando más mensajes, etc., hasta que lea el final. O puede desplazarse con su mouse / touchpad. Es posible que pueda presionar qpara cancelar la visualización del mensaje (no puedo probarlo ahora, pero pruébelo). Para eliminar todos los mensajes, usaría el comando d *. Para eliminar el segundo mensaje, usaría d 2, etc. Úselos en el ?mensaje de correo .
inspirado

1
Simple y efectivo, gracias.
Chrstph SLN

1
También puede eliminar una variedad de mensajes, por ejemplo:d 1-15
Jay Shepherd

55

Si no desea la molestia de usar mail, puede leer el correo con

cat /var/mail/<username>

y borra el correo con

sudo rm /var/mail/<username>

¿me puede decir qué dirección de correo electrónico está registrada en / var / mail / ¿Cómo lo comprobaría?
AbhimanyuAryan

@ androidplusios.design La dirección de correo electrónico es su nombre de usuario en el sistema. Los correos electrónicos son los que le envía el sistema. También puede ser un alias para otros usuarios en el sistema, y ​​así recibir sus correos electrónicos. Ver /etc/aliases. Para obtener más información, consulte ¿Qué es el mensaje "Tiene correo nuevo" en Linux / UNIX? .
kba

Esta fue la única respuesta aquí que realmente funcionó para mí, ¡salud!
Nathan Hornby

10

Significa que un proceso o script que ha creado está enviando correo a una cuenta en su máquina local (por ejemplo, un servidor de correo que se ejecuta en la aplicación localhost).

Administre este correo con estos comandos:

t <message list>        type messages
n                       goto and type next message
e <message list>        edit messages
f <message list>        give head lines of messages
d <message list>        delete messages
s <message list>        file append messages to file
u <message list>        undelete messages
R <message list>        reply to message senders
r <message list>        reply to message senders and all recipients
pre <message list>      make messages go back to /var/mail
m <user list>           mail to specific users
q                       quit, saving unresolved messages in mbox
x                       quit, do not remove system mailbox
h                       print out active message headers
!                       shell escape
cd [directory]          chdir to directory or home if none given

A consiste en números enteros, rangos iguales o nombres de usuario separados por espacios. Si se omite, Mail usa el último mensaje escrito.

A consta de nombres de usuario o alias separados por espacios. Los alias se definen en .mailrc en su directorio de inicio.


10

Como inspiredlife explicó , se puede averiguar qué está sucediendo utilizando mailcomandos.

Si no desea eliminar un montón de mensajes no relacionados / generados automáticamente uno por uno (como yo), simplemente ejecute el siguiente comando para deshacerse de todos los mensajes:

echo -n > /var/mail/yourusername
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.