Comando para listar todos os usuários com seu UID?

12

Como posso listar todos os usuários junto com seus UIDs? Eu quero fazer isso no terminal.

    
por becko 06.07.2015 / 22:02

4 respostas

12

Listar todos os usuários com uma pasta /home :

awk -F: '/\/home/ {printf "%s:%s\n",$1,$3}' /etc/passwd

ou todos os usuários com UID >= 1000 :

awk -F: '($3 >= 1000) {printf "%s:%s\n",$1,$3}' /etc/passwd

uma combinação

awk -F: '/\/home/ && ($3 >= 1000) {printf "%s:%s\n",$1,$3}' /etc/passwd

ou para todas as entradas

awk -F: '{printf "%s:%s\n",$1,$3}' /etc/passwd

Mais informações aqui

    
por A.B. 06.07.2015 / 22:21
10

Você pode encontrá-lo facilmente usando apenas cut :

cut -d: -f1,3 /etc/passwd
  • -d: define o delimitador como : para cut

  • -f1,3 extrai os campos 1 e 3 somente delimitados por : do arquivo /etc/passwd

Verifique man cut para ter mais ideia.

Exemplo:

$ cut -d: -f1,3 /etc/passwd
root:0
daemon:1
bin:2
sys:3
sync:4
games:5
......

Se você tiver ldap configurado, inclua os ldap usuários na saída:

getent passwd | cut -d: -f1,3
    
por heemayl 06.07.2015 / 22:26
0

Como você está tentando listar o UID e o Nome de usuário, o comando abaixo funciona melhor no Solaris. Eles têm dois awk

awk -F: '($ 3 > = 1000) {printf "% s:% s", $ 1, $ 3}' / etc / passwd

    
por Mr_Macc 13.05.2016 / 17:04
0

Acho que a maneira mais fácil é ter o webmin no seu servidor e simplesmente acessar o sistema > Usuários e Grupos e lá você tem uma lista bem formatada com todos os nomes de usuários & amp; grupos com seus uid's, home directory etc.

    
por MitchellK 24.07.2016 / 10:24