불완전한 일치 항목을 검색하고 파일의 열 1을 반환합니다.

불완전한 일치 항목을 검색하고 파일의 열 1을 반환합니다.

다음과 같이 탭으로 구분된 파일이 있습니다.

Adam    Group1,Group2,Group8,Group9,Group10
James   Group1,Group11,Group12,Group7
Kelly   Group18
Alfred  Group1,Group8,Group10
Manuel  Group2,Group5,Group1
Jack    Group11,Group8,Group19

이제 그룹 1을 검색하고 해당 그룹의 모든 구성원을 반환하고 싶습니다. 예를 들어 "Group1"에 대한 반환 결과는 다음과 같습니다.

Adam
James
Alfred

예를 들어 Group12의 반환 결과는 다음과 같습니다.

James

정확히 일치하지 않는 열 내에서 검색하는 방법을 잘 모르겠습니다.

답변1

GNU Awk 사용:

awk '/\<Group1\>/ {print $1}' file
Adam
James
Alfred
Manuel

참고: 입력한 데이터를 기반으로 Manuel은그룹 1에서는...

답변2

어떤 이유로 전체 단어 일치( )가 내 버전의 awk에서는 작동하지 않으므로 다음의 도움으로 문제를 해결 \<...\>해야 했습니다 .grep

grep '\<Group1\>' filename | awk '{print $1}'

관련 정보