다음 명령은 모든 그룹 someUser
(기본 및 보조)을 나열합니다.
groups someUser
그런데 기본 그룹만 가져오는 방법이 있나요?
답변1
FreeBSD를 참조하세요수동(정보는 Linux에도 적용됩니다):
그룹 ID(GID)
그룹 ID(GID)는 사용자가 속한 기본 그룹을 고유하게 식별하는 번호입니다. 그룹은 UID가 아닌 사용자의 GID를 기반으로 리소스에 대한 액세스를 제어하는 메커니즘입니다. 이렇게 하면 일부 프로필의 크기가 크게 줄어들고 사용자가 여러 그룹의 구성원이 될 수 있습니다. GID가 높을수록 일부 소프트웨어가 손상될 수 있으므로 65535 이하의 GID를 사용하는 것이 좋습니다.
그렇다면 실행 중이 id <username>
표시됩니다 gid=<primary group>
.
id <username>
uid=1000(<username>) gid=1000(<username>) groups=1000(<username>),4(adm),24(cdrom),27(sudo)
명령이 기본 그룹 이름만 반환하도록 하려면 다음을 참조하세요 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
그러므로 id -gn <username>
당신이 원하는 것을 주어야합니다.
답변2
groups <username>
사용자의 기본 그룹이 먼저 나열되므로 다음 명령을 사용하여 지정된 사용자의 기본 그룹만 추출할 수 있습니다 .
groups <username> | awk '{print $3}'