Hoe u alle gebruikers in Linux kunt weergeven

Hoe u alle gebruikers in Linux kunt weergeven

Gebruikers zijn het belangrijkste onderdeel van een Linux-systeem. Linux biedt ingebouwde opdrachten aan de beheerders waarmee ze gebruikers efficiënt kunnen beheren. Er is er een voor het maken van gebruikers, het verwijderen van gebruikers en het wijzigen van gebruikersrechten. Maar hoe zit het met het vermelden van alle gebruikers die momenteel op een systeem aanwezig zijn?





In dit artikel zullen we bespreken hoe u een lijst van alle gebruikers in Linux kunt krijgen, samen met een korte handleiding om te controleren of een gebruiker op een systeem bestaat of niet.





Een lijst met alle gebruikers in Linux tonen

Wanneer u een nieuwe gebruiker aanmaakt, worden de gebruikersnaam, het wachtwoord en andere details opgeslagen in specifieke bestanden op een Linux-machine. Gelukkig kun je met Linux dergelijke bestanden zonder enige beperking lezen en wijzigen. Met behulp van deze bestanden kunt u informatie over gebruikers kennen, zoals hun gebruikersnamen, het aantal gebruikers en meer.





Het Passwd-bestand gebruiken

De passwd bestand is een tekstbestand dat de wachtwoordrecords bevat van alle gebruikers die momenteel in uw systeem aanwezig zijn. Dit bestand bevindt zich in de /enzovoort map in uw lokale opslag en bevat de volgende informatie:

  1. Gebruikersnamen
  2. Versleutelde wachtwoorden
  3. gebruikersnaam
  4. Groeps-ID van gebruiker
  5. Voor-en achternaam
  6. De /huis directory van de gebruiker
  7. Inlogshell van gebruiker

Type cat /etc/passwd of minder /etc/passwd in uw terminal om het tekstbestand te lezen. Het openen van de /etc/passwd bestand zal een uitvoer genereren die er ongeveer zo uitziet.



root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/bin/sh
bin:x:2:2:bin:/bin:/bin/sh
sys:x:3:3:sys:/dev:/bin/sh
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/bin/sh
man:x:6:12:man:/var/cache/man:/bin/sh

De bovengenoemde uitvoer bevat zeven velden die informatie bevatten met betrekking tot de gebruikers. Deze velden worden gescheiden door een scheidingsteken --- in dit geval een dubbele punt. Elke rij in de uitvoer geeft een enkele gebruiker aan.

Om een ​​lijst van alle gebruikersnamen te krijgen met behulp van de passwd het dossier:





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

Awk is een opdrachtregelprogramma waarmee Linux-gebruikers eenvoudige 'eenregelige' programma's kunnen maken die snelle bewerkingen uitvoeren vanaf de terminal. In de bovengenoemde code:

  1. -F staat voor Veldscheidingsteken. Aangezien de dubbele punt het scheidingsteken is in de /etc/passwd bestand, geven we de dubbele punt door als scheidingsteken in het awk-commando.
  2. { print } geeft het systeem de opdracht om het eerste veld af te drukken. In dit geval is het eerste veld de gebruikersnaam van de gebruikers.
  3. /etc/passwd bestand bevat de gegevens met betrekking tot de gebruikers.

Als u de bovenstaande opdracht uitvoert, worden de gebruikersnamen van alle gebruikers weergegeven. sinds de /etc/passwd bestand systeemgebruikers bevat, bevat de uitvoer ook hun gebruikersnamen.





root
daemon
bin
sys
sync
games
man

U kunt de awk-opdracht enigszins aanpassen om de volledige namen van de gebruikers af te drukken. Typ de volgende opdracht om de volledige namen van gebruikers in Linux te tonen:

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

Aangezien systeemgebruikers dezelfde gebruikersnaam en volledige naam hebben, zult u geen verschil merken in de uitvoer. Alleen de gebruikers die u aan uw systeem hebt toegevoegd, hebben verschillende gebruikersnamen en volledige namen.

Als alternatief kunt u ook gebruik maken van snee in plaats van het awk-commando. De syntaxis van cut lijkt veel op het awk-commando.

Om de gebruikersnamen in Linux af te drukken met knippen:

cut -d: f1 /etc/passwd

Hier, -NS is het scheidingsteken, f1 geeft het eerste veld (gebruikersnaam) aan, en /etc/passwd is het tekstbestand dat de gegevens bevat.

waarom crashen mijn games steeds?

Om de voornamen van gebruikers af te drukken met knippen:

cut -d: f5 /etc/passwd

Op dezelfde manier kunt u andere velden uitvoeren vanuit de /etc/passwd bestand door simpelweg te vervangen f5 met f1-f7 .

Verwant: Hoe u uw Linux-wachtwoord kunt wijzigen

Lijst gebruikers met het getent-commando

Het getent-commando drukt de inhoud af van belangrijke tekstbestanden die fungeren als een database voor het systeem. Bestanden zoals /etc/passwd en /etc/nsswitch.conf bevatten informatie met betrekking tot respectievelijk gebruikers en netwerken en kunnen worden gelezen met het commando getent.

bestanden overzetten van telefoon naar computer

Om de inhoud van de . af te drukken /etc/passwd bestand met getent:

getent passwd

De uitvoer zal zeven verschillende velden bevatten, gescheiden door een dubbele punt. Elk veld is gereserveerd voor bepaalde informatie, inclusief de gebruikersnamen en homedirectory-paden van de gebruikers.

root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/bin/sh
bin:x:2:2:bin:/bin:/bin/sh
sys:x:3:3:sys:/dev:/bin/sh
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/bin/sh
man:x:6:12:man:/var/cache/man:/bin/sh

Je kunt het getent-commando koppelen met awk of cut om alleen de lijst met gebruikersnamen te krijgen.

getent passwd | awk -F: '{print }'
getent passwd | cut -d: -f1

Om de volledige namen van de gebruikers af te drukken:

getent passwd | awk -F: '{print }'
getent passwd | cut -d: -f5

Controleer of een gebruiker bestaat of niet

In sommige situaties wilt u misschien controleren of er een gebruiker op uw Linux-systeem bestaat of niet. De greep commando is handig wanneer u een specifiek tekstpatroon uit een bestand wilt halen.

U kunt elk van de volgende opdrachten gebruiken om het bestaan ​​van een gebruiker te controleren.

compgen -u | grep username
getent passwd | grep username

Als de gebruiker bestaat, worden de bijbehorende inloggegevens op het scherm weergegeven. Aan de andere kant, als de gebruiker niet in het systeem aanwezig is, zal er een fout optreden.

Om te controleren of een gebruiker op een systeem bestaat zonder grep te gebruiken:

getent passwd username

Je kunt ook de getent of compgen commando met greep en gooide uit om aangepaste uitvoer weer te geven.

getent passwd | grep -q username && echo 'User found' || echo 'User not found'
compgen -u | grep -q username && echo 'User found' || echo 'User not found'

Het bovenstaande commando zal 'Gebruiker gevonden' afdrukken als de gebruiker op het systeem bestaat, en 'Gebruiker niet gevonden' als dat niet het geval is.

Tel het aantal gebruikers op een systeem

Om het aantal gebruikers op een Linux-systeem te tellen:

compgen -u | wc -l
getent passwd | wc -l

In de bovenstaande commando's, compgen en getent zijn verantwoordelijk voor het weergeven van de lijst met alle gebruikers en andere informatie met betrekking tot hen. De wc staat voor het aantal woorden en wordt gebruikt om het aantal woorden of regels in de uitvoer te tellen. De -de vlag geeft aan lijnen .

Gebruikersaccounts verifiëren in Linux

Elke Linux-beheerder zou moeten weten hoe hij andere gebruikers op een systeem kan beheren en beheren. Het beheersen van Linux-opdrachten waarmee u andere gebruikers kunt maken, verwijderen, beheren en weergeven, is een geweldige manier om aan de slag te gaan met gebruikersbeheer.

Als u nog maar een beginner bent, moet u zich op uw gemak voelen met de Linux-omgeving. Er zijn bepaalde dingen die je moet doen direct na het installeren van je allereerste Linux-distributie. Het leren van enkele basiscommando's is er een van en is essentieel voor het uitvoeren van eenvoudige computertaken op Linux.

Deel Deel Tweeten E-mail Aan de slag met Linux

Geïnteresseerd in het gebruik van Linux, maar weet je niet waar te beginnen? Leer hoe je Linux gebruikt, van het kiezen van een distro tot het installeren van apps.

Lees volgende
Gerelateerde onderwerpen
  • Linux
  • Linux
Over de auteur Deepesh Sharma(79 artikelen gepubliceerd)

Deepesh is de Junior Editor voor Linux bij MUO. Hij schrijft informatieve handleidingen over Linux, met als doel een zalige ervaring te bieden aan alle nieuwkomers. Ik weet niet zeker van films, maar als je over technologie wilt praten, is hij jouw man. In zijn vrije tijd kun je hem boeken zien lezen, naar verschillende muziekgenres luisteren of zijn gitaar spelen.

Meer van Deepesh Sharma

Abonneer op onze nieuwsbrief

Word lid van onze nieuwsbrief voor technische tips, recensies, gratis e-boeken en exclusieve deals!

Klik hier om je te abonneren