English

cmp — 바이트 단위 비교

Linux / 리눅스 기본 명령어 / cmp.html

리눅스 기본 명령어원문등록 2026-10-20T09:00:00+09:00

두 파일을 바이트 단위로 비교해 첫 차이를 알려 주는 명령어.

기본 정보

명령어 이름cmp
한 줄 소개두 파일을 바이트 단위로 비교해 첫 차이를 알려 주는 명령어.
제공GNU diffutils
공식 문서https://man7.org/linux/man-pages/man1/cmp.1.html
지원 운영체제Linux, macOS, BSD, WSL
설치 여부기본 탑재
분류리눅스 기본 명령어 (태그: 리눅스 기본 명령어 (태그: cmp, 비교, 바이트, diff))

이 명령어는 무엇인가?

cmp는 두 파일을 앞에서부터 바이트 단위로 비교하고, 처음 다른 위치와 내용을 보고합니다. 텍스트 차이를 줄 단위로 보여 주는 diff와 목적이 다릅니다.

-s 옵션은 출력 없이 종료 코드만 반환하므로 스크립트에서 동일 여부를 판정할 때 적합합니다. 바이너리 파일이나 압축 파일이 같은지 확인할 때 특히 유용합니다.

어떤 문제를 해결하는가?

  • 복사한 파일이 원본과 동일한지 확인할 때
  • 압축 파일이나 바이너리를 비교할 때
  • 스크립트에서 파일 동일 여부를 판정할 때
  • diff가 줄 단위라 판별이 어려울 때

주요 기능

첫 차이 보고

처음 다른 바이트 위치와 값을 알려 줍니다.

  • 활용 상황: 파일이 어디서 달라지는지 찾을 때
  • 얻는 결과: 바이트 단위로 정확히 지목합니다.
  • 제한 사항: 여러 차이를 한 번에 보여 주지는 않습니다.

조용한 비교

-s로 출력 없이 종료 코드만 받습니다.

  • 활용 상황: 스크립트에서 동일 여부만 필요할 때
  • 얻는 결과: 분기 처리가 단순해집니다.
  • 제한 사항: 차이 내용은 알 수 없습니다.

길이 비교

길이가 다르면 그 사실도 함께 보고합니다.

  • 활용 상황: 잘린 파일을 찾아낼 때
  • 얻는 결과: 전송 사고를 빠르게 발견합니다.
  • 제한 사항: 내용이 같은데 길이만 다른 경우는 드뭅니다.

설치 및 실행

설치 여부 확인

cmp --version

sudo apt install diffutils # Debian/Ubuntu sudo dnf install diffutils # Fedora

실제 사용 예제

바이트 비교

두 파일의 첫 차이를 확인합니다.

cmp a.bin b.bin

조용한 비교

동일 여부만 종료 코드로 받습니다.

cmp -s a.bin b.bin && echo SAME || echo DIFF

압축 파일 비교

압축 결과가 같은지 확인합니다.

cmp -s out1.tar.gz out2.tar.gz; echo $?