exibe usuários que efetuaram login desde uma data usando o último

1

Estou tentando exibir o nome de usuário das contas que fizeram login durante o mês passado usando o comando last .

No momento eu tenho isso

last | awk '{print $1, $4 ,$5 ,$6}' | grep -B 10 Jul | sort -u -t' ' -k1,1

Como os usuários que efetuaram login mais recentemente são exibidos mais acima na lista, estou tentando grep do mês, depois exibo essa linha e as linhas acima dela e excluo os nomes de usuário duplicados. Mas não parece estar funcionando. Alguma idéia?

    
por jonny 09.11.2015 / 01:13

1 resposta

2

Supondo que você esteja usando a versão de last no pacote util-linux :

last -s '2015-11-01'  | sort -k1,1 -u

ou até mesmo:

last -s '-1 month'  | sort -k1,1 -u

ou

last -s '2015-07-01' -t '2015-07-31' | sort -k1,1 -u

last tem -s ( --since ) e -t ( --until ) opções para restringir a saída a determinadas datas e horas. O sort -k1,1 -u faz uma classificação única apenas no primeiro campo da saída de last .

Veja man last , especialmente procure por TIME FORMATS para mais detalhes.

    
por 09.11.2015 / 02:24