DIFF(1)

이름
diff - 파일을 행 별로 비교합니다

요약
diff [OPTION]... FILES

설명
파일을 행 별로 비교합니다.

긴 옵션의 필수 인자값은 짧은 옵션에서도 마찬가지입니다.

--normal
    일반 비교 결과를 출력합니다 (기본 동작)

-q, --brief
    파일이 다를 때만 보고

-s, --report-identical-files
    두 파일이 같을 때 보고

-c, -C NUM, --context[=NUM]
    복제 컨텍스트 숫자(기본값 3)행 만큼 출력

-u, -U NUM, --unified[=NUM]
    단일 컨텍스트 숫자(기본값 3)행 만큼 출력

-e, --ed
    ed(1) 스크립트 출력

-n, --rcs
    RCS 형식 비교 내용 출력

-y, --side-by-side
    두 컬럼으로 출력

-W, --width=NUM
    최대 숫자(기본값 130) 출력 컬럼만큼 출력

--left-column
    공통 행의 좌측 컬럼만 출력

--suppress-common-lines
    공통 행은 출력하지 않음

-p, --show-c-function
    어떤 C 함수가 바뀌었는지 표시

-F, --show-function-line=RE
    RE와 일치하는 가장 최근 행 표시

--label 레이블
    파일 이름과 타임스탬프 대신 레이블 활용 (반복할 수 있음)

-t, --expand-tabs
    출력시 탭을 공백 칸으로 변환

-T, --initial-tab
    여러 탭을 탭인 것처럼 줄을 맞춤

--tabsize=NUM
    모든 숫자(기본값 8) 출력 컬럼마다 탭 배치

--suppress-blank-empty
    빈 출력행 앞의 공백문자 내지는 탭 무시

-l, --paginate
    pr(1)로 페이지 분할하여 출력 건너뛰기

-r, --recursive
    하위 디렉터리를 찾으면 재귀적으로 비교

--no-dereference
    심볼릭 링크를 따라가지 않음

-N, --new-file
    누락 파일을 빈 파일로 취급

--unidirectional-new-file
    빠진 첫 줄은 빈 줄로 취급

--ignore-file-name-case
    파일 이름 비교시 대소문자 무시

--no-ignore-file-name-case
    파일 이름 비교시 대소문자 구분

-x, --exclude=PAT
    패턴에 일치하는 파일 제외

-X, --exclude-from=FILE
    파일 패턴에 일치하는 파일 제외

-S, --starting-file=FILE
    디렉터리를 비교할 때 파일부터 시작

--from-file=FILE1
    파일1을 모든 비교 대상과 비교; 파일1은 디렉터리일 수 있음

--to-file=FILE2
    모든 대상을 파일2와 비교; 파일2는 디렉터리일 수 있음

-i, --ignore-case
    파일 내용의 대소문자 차이 무시

-E, --ignore-tab-expansion
    탭 변환 바뀜 무시

-Z, --ignore-trailing-space
    행 끝 공백 문자 무시

-b, --ignore-space-change
    대량의 공백 문자 바뀜 무시

-w, --ignore-all-space
    모든 공백 문자 무시

-B, --ignore-blank-lines
    빈 행의 바뀜 무시

-I, --ignore-matching-lines=RE
    정규 표현식 RE에 일치하는 모든 바뀐 행 무시

-a, --text
    모든 파일을 텍스트 파일로 취급

--strip-trailing-cr
    입력에 뒤따라오는 캐리지 리턴 문자를 잘라냅니다

-D, --ifdef=NAME
    '#ifdef 이름' 비교로 병합한 파일을 출력합니다

--GTYPE-group-format=GFMT
    GTYPE 입력 그룹을 GFMT로 서식 지정

--line-format=LFMT
    모든 입력 행을 LFMT로 서식 지정

--LTYPE-line-format=LFMT
    LTYPE 입력 행을 LFMT로 서식 지정

    이 서식 옵션으로 -D/--ifdef를 일반화하여 diff 출력을 세밀하게

    조정할 수 있습니다.

LTYPE은 'old', 'new', 'unchanged'입니다.
    GTYPE은 LTYPE 또는 'changed'입니다.

    GFMT (의 경우에만) 해당:

%<  파일1의 행

%>  파일2의 행

%=  파일1과 파일2의 공통행

%[-][WIDTH][.[PREC]]{doxX}문자
    문자에 대한 printf 방식 명세

    문자는 다음의 경우 new 그룹, 소문자는 old 그룹에 해당합니다:

F   첫 행 번호

L   마지막 행 번호

N   행 갯수 = L-F+1

E   F-1

M   L+1

%(A=B?T:E)
    A와 B가 같으면 T, 아니면 E

    LFMT (의 경우에만) 해당:

%L  행 내용

%l  개행 문자를 제외한 행 내용

%[-][WIDTH][.[PREC]]{doxX}n
    입력 행 번호의 printf 방식 명세

    GFMT와 LFMT 모두에 해당:

%%  %

%c'C'
    단일 문자 C이스케이프 문자

%c'\OOO'
    문자와 8진수 코드 OOO

C   문자 C (다른 문자는 문자 그 자체를 나타냄)

-d, --minimal
    적게 바뀐 내용을 최대한 검색

--horizon-lines=NUM
    공통 접두, 접미부의 숫자 행은 유지합니다

--speed-large-files
    여기저기 작게 바뀐 내용이 많은 큰 파일로 간주

--color[=시기]
    색상 출력합니다. 시기 값은 'never', 'always', 'auto' 중 하나입니다; --color 옵션은 --color='auto'를 의미합니다

--palette=PALETTE
    --color 옵션을 지정했을 때 사용할 색상입니다. 팔레트는 terminfo에서 사용할 수 있는 콜론 구분 목록입니다

--help
    이 도움말을 표시하고 나갑니다

-v, --version
    버전 정보를 출력하고 나갑니다

파일에는 '파일1 파일2', '디렉터리1 디렉터리2', '디렉터리 파일', '파일 디렉터리'가 해당합니다. 파일 값이 '-' 문자라면, 표준 입력을 읽습니다. 종료 상태는 입력이 동일하면 0, 다르면 1, 문제 발생시 2입니다.

저자
Written by Paul Eggert, Mike Haertel, David Hayes, Richard Stallman, and Len Tower.

버그 보고
버그 보고 주소: bug-diffutils@gnu.org
GNU diffutils 홈페이지: <https://www.gnu.org/software/diffutils/>
GNU 소프트웨어 활용 일반 도움말: <https://www.gnu.org/gethelp/>

저작권
저작권 © 2025 Free Software Foundation, Inc. 라이선스 GPLv3+: GNU GPL 버전 3 이상 <https://gnu.org/licenses/gpl.html>.
이 프로그램은 자유 소프트웨어입니다: 자유롭게 바꾸고 재배포할 수 있습니다. 법률이 허용하는 모든 범위내의 보증은 없습니다.

추가 참조
wdiff(1), cmp(1), diff3(1), sdiff(1), patch(1)

diff 의 전체 문서는 Texinfo 설명서로 관리합니다. info(1) 와 diff 프로그램을 제대로 설치했다면,

    info diff

명령으로 완전한 설명서를 띄울 수 있어야합니다.

번역
이 매뉴얼 페이지의 한국어 번역은 다음에 의해 편집되었습니다: ASPLINUX <man@asp-linux.co.kr> , 한글 Manpage 프로젝트 <http://man.kldp.org>

이 번역은 무료 문서입니다. 저작권 조건에 대해서는 GNU General Public License 버전 3 (https://www.gnu.org/licenses/gpl-3.0.html) 이상을 읽으십시오. 책임이 없습니다.

이 매뉴얼 페이지의 번역에서 오류를 발견하면 translation-team-ko@googlegroups.com 로 이메일을 보내주십시오.