Finnes det en kommando for å liste opp alle Unix-gruppenavn?

Jeg vet at det finnes filen /etc/group som viser alle brukergrupper.

Jeg vil gjerne vite om det er en enkel kommando for å liste opp alle brukergruppenavn til tross for å analysere den verdenslesbare / etc / group-filen. Jeg er villig til å opprette en administrator webside som viser Linux-kontoer' gruppenavn.

Løsning

Bruk denne kommandoen for å liste opp alle lokale grupper som har tilordnede brukere:

cut -d: -f1 /etc/group | sort

For mer informasjon- > Unix-grupper, Klipp-kommando, sorteringskommando

Kommentarer (4)

Hvis du vil at alle grupper skal være kjent for systemet, vil jeg anbefale å bruke getent i stedet for å analysere /etc/group. På nettverkssystemer kan grupper ikke bare leses fra /etc/group-filen, men også hentes via LDAP eller Gule Sider, dvs. listen over kjente grupper kommer fra den lokale gruppefilen pluss grupper mottatt via LDAP eller YP.

getent group vil gi deg en liste over alle grupper i samme format som /etc/group-filen bruker.

Hvis du bare vil ha gruppenavnene, vil getent group | cut -d: -f1 gjøre jobben (samme som ovenfor).

Kommentarer (3)

På Linux, macOS og Unix bruker du for å vise gruppene du tilhører:

id -Gn

som tilsvarer groups-verktøyet som er foreldet på Unix (i henhold til Unix manual).

På macOS og Unix foreslås kommandoen id -p for normal interaktiv.

Forklaring av parametrene:

-G, --groups - skriver ut alle gruppe-ID-er.

-n, --name - skriver ut et navn i stedet for et nummer, for -ugG.

-p - gjør utskriften lesbar for mennesker.

Kommentarer (5)