Eu não estou familiarizado com o macOS mas espero que os conceitos sejam bem parecidos com os do Linux. Isto é um pouco de simplificação, mas basicamente, neste contexto, o “console” refere-se ao computador inteiro. Ou, para ser um pouco mais específico, a exibição e os dispositivos de entrada humanos (teclado, dispositivo (s) apontador (es), etc.) (Logins de rede são excluídos do "console").
Quando você faz login no seu computador (localmente, não através da rede), você está logando no console.
Agora você está obviamente familiarizado com terminais -
janelas nas quais você pode executar comandos, como ls
e w
.
Quando você faz o login no console,
automagicamente executa um comando (ou um grupo de comandos)
que fornece a interface com janelas à qual você está acostumado.
Alguns sistemas operacionais fazem o mecanismo pelo qual isso acontece visível,
e às vezes até ajustável; outros fazem isso inteiramente "sob o capô".
Como o console não executa nenhum comando, exceto pelo próprio sistema de janelas, parece estar ocioso. Na maioria dos sistemas operacionais (e espero que o macOS seja um deles), o único foi para mudar para o console é para sair do sistema de janela - mas isso te leva de volta ao console, que automaticamente faz seu logout.
Há outra ruga:
- O comando
w
lê um arquivo de sistema, formata bem os dados para uma pessoa olhar para ela, e grava-o na saída padrão. - Uma entrada é gravada no arquivo sempre que alguém faz login no console ou através da rede. Alguns (a maioria - todos?) Sistemas também escrevem uma entrada quando o usuário no console inicia uma nova janela de terminal.
- As entradas normalmente são apagadas quando um usuário faz logout ou fecha uma janela de terminal.
- A palavra-chave no marcador acima é "normalmente".
Em alguns casos, se você matar um processo (especialmente se você fizer isso como superusuário),
você pode interferir no mecanismo que apaga os dados antigos.
Assim,
w
pode relatar informações que não são mais válidas.
Se você não souber como usar o ps
, deverá aprender.
Você pode usar em vez de w
,
mas provavelmente é melhor usá-los juntos.
Use w
para fornecer um roteiro do que procurar na saída ps
.
Não acredite cegamente em tudo que w
lhe disser;
acredite apenas nas informações que você pode verificar com ps
.
Por exemplo, se você matou todos os processos de "convidado",
e w
ainda diz que "convidado" está logado,
provavelmente está dando informações obsoletas e inválidas.
Você pode encontrar Qual é a diferença entre shell, console, e terminal? e Qual é a diferença exata entre um 'terminal', um 'shell', um 'tty' e um 'console'? valer a pena ler.