web-dev-qa-db-fra.com

Commande pour lister tous les utilisateurs avec leur UID?

Comment puis-je lister tous les utilisateurs avec leurs UID? Je veux le faire depuis le terminal.

14
becko

Répertoriez tous les utilisateurs avec un dossier /home:

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

ou tous les utilisateurs avec un UID >= 1000:

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

une combinaison

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

ou pour toutes les entrées

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

Plus d'informations ici

14
A.B.

Vous pouvez le trouver facilement en utilisant simplement cutname__:

cut -d: -f1,3 /etc/passwd
  • -d: définit le délimiteur comme : pour cutname__

  • -f1,3 extrait les champs 1 et 3 uniquement délimités par : à partir du fichier /etc/passwd

Vérifiez man cut pour avoir plus d’idées.

Exemple:

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

Si vous avez configuré ldapname__, vous devez inclure les ldaputilisateurs dans la sortie:

getent passwd | cut -d: -f1,3
10
heemayl

Étant donné que vous essayez de répertorier l'UID et le nom d'utilisateur, la commande ci-dessous fonctionne mieux sous Solaris. Ils ont deux awk

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

0
Mr_Macc

Je trouve que le moyen le plus simple est d'avoir Webmin sur votre serveur et d'aller simplement dans Système> Utilisateurs et groupes. Vous y trouverez une liste bien formatée avec tous les noms d'utilisateurs et groupes avec leurs uid, leurs répertoires personnels, etc.

0
MitchellK