두 csv 파일의 두 번째 열 비교 [닫기]

두 csv 파일의 두 번째 열 비교 [닫기]

두 번째 열의 두 파일을 비교 하고 생성된 결과를 output.csv 로 사용해야 합니다 awk.

파일 1.csv

5, 0,
5, 1,
5, 1,
4, 1,
4, 1,
4, 1,

파일 2.csv

5, 0,
5, 1,
5, 1,
4, 0,
4, 2,
4, 3,

출력.csv

5, 0,
5, 1,
5, 1,
4, D,
4, D,
4, D,

답변1

두 파일의 줄 수가 동일하고 두 파일의 줄이 쌍 방식으로 서로 대응한다고 가정합니다.

$ paste file1 file2 | awk -F', *' -vOFS="," '$2 != $4 { $2 = "D" } { print $1, $2 }'
5,0
5,1
5,1
4,D
4,D
4,D

paste명령은 아래와 같이 두 파일을 나란히 배치합니다.

5, 0,   5, 0,
5, 1,   5, 1,
5, 1,   5, 1,
4, 1,   4, 0,
4, 1,   4, 2,
4, 1,   4, 3,

그런 다음 코드는 awk이를 쉼표로 구분된 데이터(뒤에 공백이 가능함)로 읽고, 두 번째 열이 네 번째 열과 같지 않은 경우 두 번째 열을 문자로 설정합니다 D. 그런 다음 코드는 쉼표를 구분 기호로 사용하여 처음 두 열(두 번째 열은 수정되었을 수 있음)을 인쇄합니다.

관련 정보