Linux 명령어 · 2 min read · Sep 16, 2025
초보자를 위한 Linux comm 명령어 튜토리얼 (5가지 예제)
Linux에서 comm 명령어는 사용자가 두 개의 정렬된 파일을 줄 단위로 비교할 수 있게 해줍니다. 이 튜토리얼에서는 이해하기 쉬운 예제를 사용하여 이 명령줄 도구에 대해 논의할 것입니다. 하지만 그 전에, 이 튜토리얼에서 언급된 모든 예제는 Ubuntu 16.04LTS에서 테스트되었음을 알려드립니다.
Linux comm 명령어
다음 예제는 ‘comm’ 도구가 어떻게 작동하는지에 대한 좋은 아이디어를 제공할 것입니다.
1. comm을 사용하여 두 개의 정렬된 파일 비교하기
‘comm’을 사용하여 두 개의 정렬된 파일을 비교하려면, 명령줄 도구에 인수로 파일 이름을 전달하면 됩니다. 일반적인 구문은 다음과 같습니다:
comm [name-of-first-file] [name-of-second-file]예를 들어, ‘file1’과 ‘file2’가 우리의 경우 두 개의 파일이라고 가정해 보겠습니다. 첫 번째 파일은 다음과 같은 줄을 포함합니다:
001
056
127
258반면 두 번째 파일은 다음과 같은 줄을 포함합니다:
002
056
167
369이제, 이 경우의 ‘comm’ 명령어 출력은 다음과 같습니다:
comm file1 file2
따라서 출력은 세 개의 열로 구성되어 있음을 알 수 있습니다. 첫 번째 열은 ‘file1’에만 있는 줄을 포함하고, 두 번째 열은 ‘file2’에만 있는 줄을 포함하며, 마지막으로 세 번째 열은 두 파일 모두에 공통된 줄을 포함합니다.
2. comm 명령어 출력에서 개별 열 숨기기
원하는 경우, comm 명령어 출력에서 개별 열을 숨길 수 있습니다. 이를 위해 세 가지 명령줄 옵션인 -1, -2, -3이 있습니다. 이 숫자는 숨기고자 하는 열을 나타냅니다.
예를 들어, 우리의 경우 세 번째 열을 숨기기 위한 명령은 다음과 같습니다:
comm -3 file1 file2
따라서 세 번째 열이 숨겨졌음을 알 수 있습니다.
여러 열을 단일 명령으로 숨길 수 있다는 점에 유의하세요. 예를 들어:
comm -12 file1 file2는 첫 번째와 두 번째 열을 모두 숨깁니다.
3. 정렬되지 않은 파일을 비교하도록 comm 설정하기
우리가 아는 바와 같이, comm 명령어는 정렬된 파일에서만 작동합니다. 파일이 정렬되지 않은 경우, 사용자에게 이를 알리는 메시지가 출력됩니다. 예를 들어, ‘file1’에서 첫 번째와 두 번째 줄을 바꾼 후 ‘file2’와 비교했습니다. 출력은 다음과 같았습니다:

따라서 명령어가 ‘file1’이 정렬되지 않았다는 메시지를 출력했음을 알 수 있습니다. 이제 입력이 정렬되었는지 확인하지 않도록 도구를 설정하려면 –nocheck-order 옵션을 사용할 수 있습니다.
comm --nocheck-order file1 file2
따라서 이전에 표시되었던 메시지가 숨겨졌음을 알 수 있습니다.
입력 파일에 대해 정렬 검사를 명시적으로 수행하도록 comm 명령어에 지시하고 싶다면, –check-order 옵션을 사용할 수 있습니다.
4. 사용자 정의 문자열로 comm 출력 열 구분하기
기본적으로 comm 명령어 출력의 열은 공백으로 구분됩니다. 그러나 원한다면 이를 변경하고 원하는 문자열을 구분자로 사용할 수 있습니다. 이는 –output-delimiter 옵션을 사용하여 수행할 수 있습니다. 이 옵션은 구분자로 사용할 문자열을 지정해야 합니다.
comm --output-delimiter=STR file1 file2예를 들어, 우리는 더하기 기호(+)를 구분자로 사용했습니다.

5. comm 출력 줄을 NUL로 종료하기
comm 명령어 출력 줄은 기본적으로 줄 바꿈으로 종료됩니다. 그러나 원한다면 NUL로 종료되도록 설정할 수 있습니다. 이는 -z 명령줄 옵션을 사용하여 수행할 수 있습니다.
comm -z file1 file2결론
comm 명령어는 많은 기능을 제공하지 않습니다 - 우리는 여기서 거의 모든 명령줄 옵션을 다루었습니다. 따라서 이 튜토리얼에서 논의한 내용을 이해하고 연습하면, 일상적인 작업에서 도구를 사용할 준비가 될 것입니다. 의문이나 질문이 있는 경우, 명령어의 매뉴얼 페이지를 참조하거나 아래에 댓글을 남겨주세요.
새 게시물을 받은 편지함에서 받기
스팸은 없습니다. 언제든지 구독 해지 가능합니다.