Liste der Benutzer anzeigen


24

Ich würde gerne sehen, wie viele Benutzer sich auf meinem System befinden. Wie kann ich eine Liste aller Benutzer im System anzeigen?


2
Ich denke, /etc/passwdwürde dir helfen.
Зелёный

5
Meinen Sie damit, wie viele Benutzerkonten im System vorhanden sind oder wie viele Benutzer derzeit angemeldet sind?
D_Bye

Antworten:


28

Sie können eine Liste aller Benutzer mit erhalten

getent passwd | cut -d':' -f1

Dadurch wird die erste Spalte (Benutzername) der Systembenutzerdatenbank ausgewählt. Im Gegensatz zum Parsing von Lösungen /etc/passwdfunktioniert dies unabhängig vom verwendeten Datenbanktyp (traditionell /etc/passwd, LDAP usw.). Beachten Sie, dass diese Liste auch Systembenutzer enthält (z. B. nobody, mail, etc.).

Die genaue Benutzernummer kann wie folgt ermittelt werden:

getent passwd | wc -l

Eine Liste der aktuell angemeldeten Benutzer erhalten Sie mit dem Befehl usersoder who:

users  # or
who

Warum nicht verwenden getent passwd, um die aktuelle Benutzerliste abzurufen, einschließlich der über LDAP usw. gefundenen Benutzer? Dies wc -lwäre auch eine weitaus kürzere Möglichkeit, die Zeilen /etc/passwd(oder die Ausgabe von getent passwd) zu zählen.
27.

@ n.st Das ist in der Tat besser. Ich habe die Änderung in meine Antwort aufgenommen. Vielen Dank.
Marco

Das wird nicht unbedingt alle Benutzer auflisten. Einige Benutzerdatenbanken können nicht aufzählbar gemacht werden
Stéphane Chazelas

3

Sie könnten einfach catdie /etc/passwdDatei oder verwenden,

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

Wenn Sie das erste Feld derselben Datei ausschneiden, werden die erwarteten Namen aufgelistet. Zusätzlich w whound fingerwürde Ihnen helfen, mit wem alle von welchen Positionen / tty und ihren Tätigkeitsdetails angemeldet werden.


Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.