컴퓨팅에서, cmp는 유닉스 또는 유닉스-계열 운영 시스템을 사용하는 컴퓨터 시스템에 대해 명령줄 유틸리티입니다. 그것은 임의의 유형의 두 파일을 비교하고 결과를 표준 출력에 씁니다. 기본적으로, cmp는 파일이 같으면 침묵합니다; 만약 그것들이 차이가 있으면, 첫 번째 차이가 발생된 파일에서 바이트 및 줄 번호가 보고됩니다. 그 명령은 OS-9 쉘에서도 사용할 수 있습니다.
History
cmp는 1987년 2호부터 X/Open 이식성 가이드의 일부입니다. 그것은 POSIX.1의 첫 번째 버전과 단일 유닉스 사양으로 상속되었습니다. 그것은 버전 1 유닉스에서 처음 등장했습니다.
GNU coreutils에 번들된 cmp 버전은 Torbjorn Granlund와 David MacKenzie에 의해 작성되었습니다.
cmp 명령은 역시 IBM i 운영 시스템에 이식되었습니다.
Switches
cmp는 명령줄 스위치의 사용에 의해 한정될 수 있습니다. cmp의 주목할만한 구현에서 지원되는 스위치는 다음과 같습니다:
이름 | 설명 | 유닉스 | Plan 9 | Inferno | FreeBSD | 리눅스 | IBM i |
-b, --print-bytes |
다른 바이트를 인쇄합니다. 제어 바이트를 '^' 뒤에 알파벳 문자로 표시하고 상위 비트가 'M-' ("메타"를 의미함)로 설정된 바이트 앞에 표시합니다. | No | No | No | No | Yes | No |
-h | 심볼릭 링크를 따르지 마십시오. | No | No | No | Yes | No | No |
-i SKIP, --ignore- initial=SKIP |
입력의 첫 번째 SKIP 바이트를 건너뜁니다. | No | No | No | No | Yes | No |
-i SKIP1:SKIP2, --ignore- initial=SKIP1:SKIP2 |
FILE1의 첫 번째 SKIP1 바이트와 FILE2의 첫 번째 SKIP2 바이트를 건너뜁니다. | No | No | No | No | Yes | No |
-l, --verbose |
기본 표준 출력 대신, 모든 다른 바이트의 (십진수) 바이트 수와 (팔진수) 값을 출력합니다. 역시, 한 파일이 다른 파일보다 짧으면 EOF 메시지를 출력합니다. | Yes | Yes | Yes | Yes | Yes | Yes |
-L | 첫 번째 다른 바이트의 줄 번호를 인쇄합니다. | Yes | Yes | Yes | No | No | No |
-n LIMIT, --bytes=LIMIT |
최대 LIMIT바이트까지 비교합니다. | No | No | No | No | Yes | No |
-s, --quiet, --silent |
아무것도 출력하지 않습니다. 오직 종료 상태를 반환합니다. | Yes | Yes | Yes | Yes | Yes | Yes |
-t | 파일이 텍스트 모드에서 열렸었고 바이트 단위로 비교하기 전에 작업의 CCSID로 변환되는 텍스트 모드입니다. | No | No | No | No | No | Yes |
-v, --version |
버전 정보를 출력합니다. | No | No | No | No | Yes | No |
-x | -l과 비슷하지만 십육진수로 인쇄하고 파일에서 첫 번째 바이트에 대해 인덱스로 0을 사용합니다. | No | No | No | Yes | No | No |
-z | 정규 파일에 대해 먼저 파일 크기를 비교하고, 그것들이 같지 않으면 비교에 실패합니다. | No | No | No | Yes | No | No |
--help | 도움말 파일을 출력합니다. | No | No | No | No | Yes | No |
바이트 카운트인 피연산자는 통상적으로 십진수이지만, 팔진수에 대해 '0', 십육진수에 대해 '0x'가 앞에 올 수 있습니다.
바이트 카운트는 뒤에 해당 카운트의 배수를 지정하는 접미사가 올 수 있습니다; 이 경우에서 생략된 정수는 1로 이해됩니다. 빈 크기 문자, 또는 'iB'가 뒤에 오는 문자는 1024의 거듭제곱을 사용하여 배수를 지정합니다. 'B' 다음에 오는 크기 문자는 대신 1000의 거듭제곱을 지정합니다. 예를 들어, '-n 4M' 및 '-n 4MiB'는 '-n 4194304'와 동등하지만, '-n 4MB'은 '-n 4000000'에 해당합니다. 이 표기법은 십진 배수에 대해 SI 접두사 및 이진 배수에 대해 IEC 60027-2 접두사와 상향 호환됩니다.
Return values
- 0 – files are identical
- 1 – files differ
- 2 – inaccessible or missing argument
External links
- cmp: compare two files – Commands & Utilities Reference, The Single UNIX Specification, Issue 7 from The Open Group
- Comparing and Merging Files: Invoking cmp The section of the manual of GNU cmp in the diffutils free manual.