Afficher la liste des utilisateurs

24

Je voudrais voir combien d'utilisateurs sont sur mon système. Comment puis-je afficher une liste de tous les utilisateurs du système?

ayy lmao
la source
2
Je pense que /etc/passwdcela vous aiderait.
Зелёный
5
Voulez-vous dire combien de comptes d'utilisateurs se trouvent sur le système ou combien d'utilisateurs sont actuellement connectés?
D_Bye

Réponses:

28

Vous pouvez obtenir une liste de tous les utilisateurs avec

getent passwd | cut -d':' -f1

Ceci sélectionne la première colonne (nom d'utilisateur) de la base de données d'utilisateurs système. Contrairement à l'analyse des solutions /etc/passwd, cela fonctionnera quel que soit le type de base de données utilisé (traditionnel /etc/passwd, LDAP, etc.). Notez que cette liste inclut également les utilisateurs du système (par exemple, personne, courrier, etc.).

Le numéro d'utilisateur exact peut être déterminé comme suit:

getent passwd | wc -l

Une liste des utilisateurs actuellement connectés peut être obtenue avec la commande usersou who:

users  # or
who
Marco
la source
Pourquoi ne pas utiliser getent passwdpour obtenir la liste des utilisateurs actuelle, y compris les utilisateurs trouvés via LDAP, etc.? En outre, wc -lserait un moyen beaucoup plus court de compter les lignes /etc/passwd(ou la sortie de getent passwd, d'ailleurs).
2015
@ n.st C'est mieux en effet. J'ai inclus le changement dans ma réponse. Merci.
Marco
Cela ne répertoriera pas nécessairement tous les utilisateurs. Certaines bases de données utilisateurs peuvent être rendues non énumérables
Stéphane Chazelas
3

Vous pouvez simplement utiliser catle /etc/passwdfichier ou l'utiliser,

awk -F':' '{ print $1}' /etc/passwd

Pour couper le premier champ du même fichier, il listerait les noms que vous attendez. Additonally, w whoet fingervous aiderait à qui tous sont connectés à partir de quels endroits / TTY et les détails de l' activité.

Keyshov Borate
la source
1

Cela marche:

sed 's/:.*//g' /etc/passwd
Afficher un nom
la source
Vous pouvez également supprimer le drapeau global si vous le souhaitez.
DisplayName