첫 번째 열에 싱글톤이 있는 모든 행을 삭제합니다.

첫 번째 열에 싱글톤이 있는 모든 행을 삭제합니다.

첫 번째 열에 싱글톤이 있는 모든 행을 삭제하고 싶습니다. 예를 들어

입력: 문자는 수천 개가 될 수 있는 변수를 나타냅니다. 숫자는 열과 행을 나타냅니다. 여러 열이 있습니다(여기에는 표시되지 않음).

    1.
1.  A
2.  B
3.  C
4.  C
5.  D
6.  E
7.  A
8.  H
9.  D
10. D

산출:

     1.
 1.  A
 3.  C
 4.  C
 5.  D
 7.  A
 9.  D
10.  D

답변1

나는 당신의 기대를 이해한다고 생각합니다.

awk 'NR==FNR{s[$1]++;next}
     (s[$1]>1){ printf("%2d. %s\n",FNR,$0)
}' infile infile
 1.  A  another_column  ...
 3.  C  ... 
 4.  C  ...
 5.  D  ...
 7.  A  ...
 9.  D  ...
10.  D  ...

결과에 레코드 번호를 포함하지 않으려면 다음 명령을 사용하십시오.

awk 'NR==FNR{s[$1]++;next} (s[$1]>1)' infile infile
 A  another_column  ...
 C  ... 
 C  ...
 D  ...
 A  ...
 D  ...
 D  ...

관련 정보