Mensagem "Você tem correio" no terminal, os X [fechado]


170

Poucos dias atrás, recebi esta mensagem na minha janela do terminal: insira a descrição da imagem aqui

O que isso significa? Eu nunca vi isso antes.

Foram as mensagens dos bots xCode.

bots

Obrigado pela ajuda.


11
Execute maile leia seu e-mail.
Blender

Em primeiro lugar - não tenho e-mails não lidos. Por um segundo - por que essa string apareceu agora? Eu nunca a vi antes.
precisa

2
Esta questão parece ser off-topic, porque ele é mais adequado para apple.stackexchange.com
Monolo

Respostas:


60

Provavelmente é alguma mensagem do seu sistema.

Digite o terminal:

man mail

e veja como você pode receber essa mensagem do seu sistema.


qual endereço de email está usando?
AbhimanyuAryan

4
e digite "d *" para apagar todas as mensagens
Ricardo Martins

9
Esvaziar acidentalmente a /var/mail/<your-username>chegada de um e-mail (que ainda não foi lido) pode ser acionado You have mailsempre que você abrir uma nova guia no Terminal (o que aconteceu comigo uma vez). Para resolver esse problema, é necessário remover o arquivo (ou seja, sudo rm /var/mail/<your-username>).
Muntashir Akon

4
Isso não responde à pergunta.
Minatverma

272

Eu também estava tendo esse problema de "Você tem e-mails" sempre que iniciei o Terminal.

O que eu descobri é isso.

Algo que eu instalei (não sei ao certo o que, mas possivelmente um script ou algo associado a um Alfred Workflow [suponha]) fez uma alteração no sistema OS X para começar a apresentar as notificações do Terminal bash. Antes disso, parece que o Wordpress tentou usar o sistema de correio local para enviar uma mensagem. A mensagem foi devolvida por ter um endereço de destinatário inválido. A mensagem devolvida acabou na caixa de entrada do sistema local. Então o Terminal (bash) estava me notificando que "você tem e-mail".

Você pode acessar o email simplesmente usando o comando

mail

Isso o lança no Mail e mostra imediatamente uma lista de mensagens armazenadas lá. Se você quiser ver o conteúdo da primeira mensagem, use

t

Isso mostrará o conteúdo da primeira mensagem, na íntegra. Você precisará rolar a mensagem para baixo para ver tudo, pressionando a down-arrowtecla.

Se você quiser pular para o final da mensagem, use o

spacebar

Se você deseja interromper a exibição da mensagem, use

q 

Para visualizar a próxima mensagem na fila, use

n

... supondo que haja mais de uma mensagem.

NOTA: Você precisa usar esses comandos no ?prompt de comando do correio . Eles não funcionarão enquanto você estiver visualizando uma mensagem. Bater nao visualizar uma mensagem causará apenas uma mensagem de erro relacionada a expressões regulares. Portanto, se no meio da exibição de uma mensagem, pressione qpara sair dela ou pressione spacebarpara pular para o final da mensagem e, no ?prompt, pressione n.

Visualizar o conteúdo das mensagens dessa maneira pode ajudar a identificar o que tentou enviar a (s) mensagem (s).

Você também pode visualizar uma mensagem específica, apenas inserindo seu número no ?prompt. 3, por exemplo, mostrará o conteúdo da terceira mensagem (se houver muitos lá).

Use o comando (no ?prompt de comando)

d [message number]

Para excluir cada mensagem quando terminar de vê-las. Por exemplo, d 2excluirá a mensagem número 2. Ou você pode excluir uma lista de mensagens, como d 1 2 5 7. Você verá os números das mensagens na lista de mensagens que o correio mostra.

Para apagar todas as mensagens, desde o correio imediato ( ?) usar o comando d *.

De acordo com um comentário nesta postagem, você precisará qsair do correio, o que também salva as alterações.

Se você quiser ver o correio em uma única saída, use este comando no prompt do bash (ou seja, não no correio, mas no prompt de comando normal):

cat /var/mail/<username>

E, se você deseja excluir todos os emails em um único hit, use este comando

sudo rm /var/mail/<username>

No meu caso em particular, havia várias mensagens. Parece que a mensagem retornada foi devolvida. Foi enviado por uma instalação local do Wordpress. Foi uma notificação para quando o usuário "Admin" (eu) alterou sua senha. Duas mensagens adicionais onde existem. Ambos pareciam estar no mesmo incidente.

O que eu não sei e não posso responder por você também é por que só recentemente comecei a ver essa notificação por email toda vez que abro o Terminal. Os e-mails foram gerados há alguns meses e, no entanto, só notei esse "você tem e-mail" aparecendo nas últimas semanas. Suspeito que seja o resultado de algo que eu instalei em Alfred e que use o Terminal bash para fornecer notificações ... ou algo nesse sentido.

Simplesmente excluindo as mensagens

Se você não tem interesse em determinar a fonte das mensagens e apenas deseja se livrar delas, pode ser mais fácil fazê-lo sem usar o mailcomando (que pode ser um pouco complicado). Conforme apontado por algumas outras pessoas, você pode usar este comando:

sudo rm /var/mail/YOURUSERNAME

12
Note que você vai precisar usar q ao correio de saída para salvar as alterações no disco
storm_m2138

Os comandos 'n' e 'd' que se seguem ao uso de 't' para exibir a primeira mensagem não funcionam como você descreve para mim. 'd' parece rolar e 'n' tem algo a ver com expressões regulares.
Nathan Hornby

@NathanHornby Você precisará usar esse comando quando voltar ao ?prompt de comando. tfornecerá uma leitura completa da primeira mensagem, com um :aviso se a mensagem exceder uma certa quantidade de saída. Pressionar qualquer tecla fará com que ela continue exibindo mais mensagens, etc., até você ler o final. Ou você pode rolar com o mouse / touchpad. Você pode ser capaz de bater qpara abortar a visualização da mensagem (não posso testar isso agora, mas experimentá-lo) .Para apagar todas as mensagens, você pode usar o comando d *. Para excluir a segunda mensagem, você usaria d 2e assim por diante. Use-os no ?prompt de correio .
Inspirado #

1
Simples e eficaz, obrigado.
Chrstph SLN

1
Você também pode excluir um intervalo de mensagens, por exemplo:d 1-15
Jay Shepherd

55

Se você não quiser usar os problemas mail, pode ler o e-mail com

cat /var/mail/<username>

e exclua o e-mail com

sudo rm /var/mail/<username>

você pode me dizer qual endereço de e-mail está registrado em / var / mail / Como eu o verificaria?
AbhimanyuAryan

@ androidplusios.design O endereço de email é o seu nome de usuário no sistema. Os emails são aqueles enviados a você pelo sistema. Você também pode ser um alias para outros usuários no sistema e, assim, receber seus e-mails. Veja /etc/aliases. Para obter mais informações, consulte Qual é a mensagem "Você tem novos e-mails" no Linux / UNIX? .
Kba 16/09

Esta foi a única resposta aqui que realmente funcionou para mim, saúde!
Nathan Hornby

10

Isso significa que um processo ou script que você criou está enviando email para uma conta em sua máquina local (por exemplo, um servidor de email em execução no aplicativo localhost).

Gerencie este email com estes 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 em números inteiros, intervalos iguais ou nomes de usuário separados por espaços. Se omitido, o Mail usa a última mensagem digitada.

A consiste em nomes de usuários ou aliases separados por espaços. Os aliases são definidos em .mailrc no seu diretório pessoal.


10

Como olife inspirado explicou , você pode descobrir o que está acontecendo usando o mailcomando

Se você não deseja excluir várias mensagens não relacionadas / geradas automaticamente uma a uma (como eu), basta executar o comando abaixo para se livrar de todas as mensagens:

echo -n > /var/mail/yourusername
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.