Data e hora de login do usuário


25

Quero buscar a hora e a data de login do usuário. Existe algum comando no Unix que fornece a data de login e a hora de login do usuário? Esse problema eu quero executar no Shell-script em que o nome de usuário está aceitando do usuário final e após verificar a disponibilidade do usuário, gostaria de buscar o tempo de login e a data de login desse usuário em diferentes variáveis ​​e exibir usando o comando 'echo' .

Respostas:


32

Para logons anteriores:

last "$USER_NAME"

Além disso, o comando wholista os logins atuais.

Se você está procurando a data do último login do usuário, alguns sistemas a fornecem diretamente, por exemplo, lastlog -u "$USER_NAME"no Linux ou lastlogin "$USER_NAME"no FreeBSD. Também está disponível na saída de finger, mas não de forma fácil de analisar. De qualquer forma, está disponível na saída de last(em muitas variantes unix, last -n 1 "$USER_NAME"mostra o último login; caso contrário, você pode fazer last "$USER_NAME" | head -n 1). Observe que o último logon pode não corresponder ao último logout (por exemplo, um usuário permaneceu conectado a uma origem por um longo tempo e fez um logon rápido na rede recentemente).


Eu sei que o comando 'who' está fornecendo as informações de login de todos os usuários, mas quero ter "Data de login" e "Horário de login", e não quero as informações de usuário para login passado, mas para um nome de usuário aceito por um usuário e quer buscar as informações sobre o usuário
Paresh Mayani

? o último "$ username" fornece "Data de login" e "Hora de login". A segunda parte da sua frase não está clara para mim, talvez seja o meu inglês, talvez o seu ... "Nome de usuário aceito por um usuário [...]"?
echox 14/09/10

@Paresh: fiquei sem meios de interpretar sua pergunta. Se minha resposta ainda não ajudar, tente deixar sua pergunta mais clara.
Gilles 'SO- stop be evil'

@Paresh: last $USER_NAMEmostrará também os usuários atuais. Ele mostrará algo comousername ttyp0 192.168.1.100 Tue Sep 13 13:09 still logged in
Stefan Lasiewski

@ Gilies, deixe-me esclarecer o que realmente quero executar, quero criar um script de shell no qual aceito o nome de usuário como "leia $ nome de usuário" e depois quero verificar se o usuário está logado ou não, se sim, então eu quero buscar o seu login-tempo e login-data, thanx para o apoio
Paresh Mayani

3

No Linux, last -R $username | awk '/still logged in/ {print $3,$4,$5,$6}'nada retornará se o usuário não estiver logado, caso contrário, uma lista de data / hora para cada sessão ativa.

Outros unixes que não sabem a -Ropção de durar (que suprime o nome do host) precisarão de algumas modificações.

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.