Altro
C'è un comando per elencare tutti i nomi dei gruppi Unix?
So che c'è il file /etc/group
che elenca tutti i gruppi di utenti.
Vorrei sapere se c'è un semplice comando per elencare tutti i nomi dei gruppi di utenti nonostante il parsing del file /etc/group
leggibile in tutto il mondo. Sono intenzionato a creare una pagina web di amministratore che elenchi gli account Linux' nomi dei gruppi.
597
3
Per elencare tutti i gruppi locali che hanno utenti assegnati a loro, usate questo comando:
Per maggiori informazioni; Gruppi Unix, Comando di taglio, comando sort
Se vuoi tutti i gruppi noti al sistema, raccomanderei di usare
getent
invece di analizzare/etc/group
. Sui sistemi in rete, i gruppi possono non solo essere letti dal file/etc/group
ma anche ottenuti tramite LDAP o Pagine Gialle, cioè la lista dei gruppi conosciuti viene dal file locale dei gruppi più i gruppi ricevuti tramite LDAP o YP.getent group
ti darà una lista di tutti i gruppi nello stesso formato usato dal file/etc/group
.Se vuoi solo i nomi dei gruppi,
getent group | cut -d: -f1
farà il lavoro (come sopra).Su Linux, macOS e Unix per visualizzare i gruppi a cui si appartiene, usare:
che è equivalente all'utilità
groups
che è stata obsoleta su Unix (come da manuale Unix).Su macOS e Unix, il comando
id -p
è suggerito per il normale interattivo.Spiegazione dei parametri:
-G
,--groups
- stampa tutti gli ID dei gruppi-n
,--name
- stampa un nome invece di un numero, per-ugG
-p
- rende l'output leggibile all'uomo.