유사한 항목에는 정렬이 적용되지 않습니다.

유사한 항목에는 정렬이 적용되지 않습니다.

다음을 사용하여 파일을 다른 파일과 연결하기 전에 정렬합니다.

sort -k1 file1 > file1_sort

두 번째 파일을 결합하려고 하면 file1이 정렬되지 않았다는 오류가 발생합니다. 다음 항목 때문에 이런 일이 발생한다고 생각합니다.

chr6_32609371_I I2 D 
chr6_32609371 T C

내 정렬 파일에서 "chr6_32609371" 줄은 "chr6_32609371_I" 앞에 배치되어야 합니다. 이를 달성하기 위해 정렬 명령에 매개변수를 추가할 수 있습니까?

답변1

문제는 sort -k1첫 번째 필드를 기준으로 정렬되지 않고 오히려~에서첫 번째 필드부터 줄 끝까지. man sort(강조 내) 에서 :

KEYDEF는 시작 및 중지 위치를 나타내는 F[.C][OPTS][,F[.C][OPTS]]입니다. 여기서 F는 필드 번호이고 C는 필드의 문자 위치입니다. 둘 다 원점 1입니다.정지 위치는 기본적으로 줄 끝으로 설정됩니다.

그래서 와 비교하고 있고 -k1, 이전 이기 때문에 보시다시피 정렬을 하고 있습니다. 이 문제를 해결하려면 시작 위치와 끝 위치를 전달하여 첫 번째 필드만 고려해야 합니다 .chr6_32609371_I I2 Dchr6_32609371 T CITsort

sort -k1,1 file

관련 정보