강좌
클라우드/리눅스에 관한 강좌입니다.
리눅스 분류

두 파일의 행과 행을 비교하는 comm명령어 개론

작성자 정보

  • 관리자 작성
  • 작성일

컨텐츠 정보

본문

두 파일의 행과 행을 비교하는 comm명령어 개론





 

comm은 지정한 두파일의 행과 행을 비교할 때에 사용하는 명령어입니다.

 

 

 

 , comm명령어는 두 파일의 행과 행을 비교하는 행단위 비교명령어입니다.

 

 

 

 comm명령어의 출력결과는 3개의 출력항목을 가집니다.

 

 

 

 특별한 옵션을 사용하지 않았을 경우, 출력내용의 첫번째 항목은 첫번째 파일에만 존재하는 내용이고, 두번째 항목은 두번째 파일에만 존재하는 내용, 그리고  세번째 항목은 두파일에 공통적으로 존재하는 내용의 순서대로 출력됩니다.

 

 

 

 그리고 -1, -2, -3등과 같은 옵션을 사용하면 좀 더 자세한 출력결과를 얻을 수 있습니다.

 

 

 

 아래 예에서 확인하시기 바랍니다.

 

 

 

 참고로 리눅스에서 텍스트파일의 비교를 위해 사용하는 명령어는 cmp, diff, diff3 그리고 comm등이 있습니다.

 

 

 

 

명령어위치 : /usr/bin/comm

 

사용형식   : comm [옵션]... 파일1 파일2

 

만약 -1이라는 옵션을 사용하면 파일1”에만 존재하는 라인은 출력하지 않습니다.

 

 

 

 그리고 -2옵션을 사용하면 파일2”에만 존재하는 라인은 출력하지 않습니다.

 

 

 

 -3옵션은 파일1”파일2” 모두에 존재하는 라인은 출력하지 않습니다.

 

 

 

 

 

그럼 먼저, comm명령어의 설명을 위하여 다음과 같은 두개의 파일을 만들었습니다.

 

 

 

  , file1 file2의 같은점과 다른점이 모두 존재하도록 생성 하였습니다.

 

 

 

 

 

[root@su250 ~]# cat file1

WWW.LINUX.CO.KR

SULINUX.

linux users.

[root@su250 ~]#

[root@su250 ~]# cat file2

www.linux.co.kr

sulinux.

linux users.

[root@su250 ~]#

 

, 위의 파일을 확인한 것과 같이 이번 예를 위하여 다음과 같이 정리하였습니다.

 

 

 

 

 

        - file1에만 있는 내용 : “WWW.LINUX.CO.KR”  “SULINUX.”

        - file2에만 있는 내용 : “www.linux.co.kr”  “sulinux.”

        - file1 file2 모두에 있는 내용 : “linux users.”

 

아래는 file1 file2의 내용이 위와 같을 때 comm명령어로 file1 file2를 비교한 결과입니다.

 

 

 

 

 

[root@su250 ~]# comm file1 file2

WWW.LINUX.CO.KR

SULINUX.

linux users.

        www.linux.co.kr

        sulinux.

        linux users.

[root@su250 ~]#

 

, 위의 결과에서 첫번째 결과에서 file1에만 존재하는 내용(WWW.LINUX.CO.KR SULINUX), 그리고 file1 file2에 모두 존재하는 내용(linux users.)이 차례대로 출력 되었습니다.

 

 

 

 

 

그리고 두번째 결과에서는 file2에만 존재하는 내용(www.linux.co.kr sulinux) 그리고 file1 file2에 모두 존재하는 내용(linux users)이 각각 출력되었습니다.

 

 

 

 

 

이 결과에서 지정한 두개 파일의 각 행들에 대한 비교를 할 수 있다는 것을 알 수 있습니다.

 

 

 

 

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,039 명
  • 현재 강좌수 :  35,848 개
  • 현재 접속자 :  89 명