Žinau, kad yra /etc/group
failas, kuriame išvardytos visos naudotojų grupės.
Norėčiau sužinoti, ar yra paprasta komanda, leidžianti išvardyti visų vartotojų grupių pavadinimus, nepaisant to, kad analizuojamas pasaulyje skaitomas /etc/group
failas. Aš noriu sukurti administratoriaus tinklalapį, kuriame būtų išvardyti Linux paskyrų' grupių pavadinimai.
Norėdami peržiūrėti visas vietines grupes, kurioms priskirti naudotojai, naudokite šią komandą:
cut -d: -f1 /etc/group | sort
Daugiau informacijos - > Unix grupės, Cut komanda, rūšiavimo komanda.
Jei norite, kad sistema žinotų visas grupes, rekomenduočiau naudoti getent
, o ne analizuoti /etc/group
. Tinklo sistemose grupės gali būti ne tik skaitomos iš /etc/group
failo, bet ir gaunamos per LDAP arba "geltonuosius puslapius", t. y. žinomų grupių sąrašas gaunamas iš vietinio grupių failo ir grupių, gautų per LDAP arba YP.
getent group
pateiks visų grupių sąrašą tokiu pačiu formatu, koks naudojamas etc/group
faile.
Jei norite gauti tik grupių pavadinimus, tai padarys getent group | cut -d: -f1
(kaip ir pirmiau).
"Linux", "MacOS" ir "Unix" sistemose norėdami parodyti grupes, kurioms priklausote, naudokite:
id -Gn
kuris yra lygiavertis groups
įrankiui, kuris "Unix" sistemoje yra atgyvenęs (kaip nurodyta Unix žinyne).
MacOS ir "Unix" sistemose įprastai interaktyviajai veiklai siūloma naudoti komandą id -p
.
Parametrų paaiškinimas:
-G
, --groups
- spausdina visų grupių ID
-n
,--pavadinimas
- vietoj skaičiaus spausdinti pavadinimą, jei tai-ugG
-p
- padaryti išvestį suprantamą žmogui.