Linux에서는 사용자가 속한 선택된 그룹만 나열합니까? [복사]

Linux에서는 사용자가 속한 선택된 그룹만 나열합니까? [복사]

groups userid 명령을 사용하면 현재 사용자에게 할당된 그룹이 100개 이상 나열됩니다. 을 나열하면 됩니다 abc.

이렇게 하면 groups userid | grep abc 모든 그룹(100개 이상)이 출력에 나열되고 abc일치하는 그룹이 강조 표시됩니다. 포함된 그룹만 나열할 수 있습니까 abc?

답변1

이 시도:

groups <username> | tr ' ' '\n' | grep "abc"

groups <username>운영 시 각 그룹을 공백으로 구분하는 것이 주요 포인트grep철사. 그렇기 때문에 간단히 \n공백을 개행 문자로 바꾼 tr다음 grep.

후행 명령 없이 이 명령을 시도하여 | grep "abc"중간 결과를 볼 수 있습니다.

답변2

먼저, 다른 그룹 이름과 일치하는 부분 문자열을 피하고 주어진 그룹 이름만 일치시키겠습니다.

$ groups
foo foobar baz ban bat
$ groups | grep --regexp=foo --regexp=ban --word-regexp
[outputs "foo foobar baz ban bat" with only "foo" and "ban" highlighted]

실제 일치하는 항목만 나열합니다.

$ groups | grep --only-matching --regexp=foo --regexp=ban --word-regexp
foo
ban

관련 정보