Comment obtenir le groupe principal d'un utilisateur?


15

La commande suivante répertorie tous les groupes de someUser(le groupe principal et les groupes supplémentaires):

groups someUser

Mais existe-t-il un moyen d'obtenir uniquement le groupe principal?


Le groupe principal n'est-il pas répertorié en premier?
simlev

Réponses:


22

Essayez les commandes suivantes

id -g

id -gn


Certains hors-sujet, mais pour obtenir l'utilisation actuelle du nom d'utilisateur id -un.
userlond

10

Voir le manuel de FreeBSD (informations également valables pour Linux):

ID de groupe (GID)

L'ID de groupe (GID) est un numéro utilisé pour identifier de manière unique le groupe principal auquel appartient l'utilisateur. Les groupes sont un mécanisme de contrôle de l'accès aux ressources basé sur le GID d'un utilisateur plutôt que sur son UID. Cela peut réduire considérablement la taille de certains fichiers de configuration et permet aux utilisateurs d'être membres de plusieurs groupes. Il est recommandé d'utiliser un GID de 65535 ou inférieur car des GID plus élevés peuvent endommager certains logiciels.

Si c'est le cas, l'exécution id <username>affichera gid=<primary group>:

id <username>
uid=1000(<username>) gid=1000(<username>) groups=1000(<username>),4(adm),24(cdrom),27(sudo)

Si vous souhaitez que la commande renvoie uniquement le nom du groupe principal, voir man id:

   -g, --group
          print only the effective group ID

   -G, --groups
          print all group IDs

   -n, --name
          print a name instead of a number, for -ugG

donc, id -gn <username>devrait vous donner ce que vous voulez.


Cela devrait être la réponse acceptée. Merci :)
grrigore
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.