English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Linux diff 명령어는 파일의 차이를 비교하는 데 사용됩니다.
diff는 텍스트 파일의 차이를 줄별로 비교합니다. 디렉토리를 지정하면, diff는 동일한 파일 이름을 가진 파일을 비교하지만, 서브 디렉토리를 비교하지 않습니다.
diff [-abBcdefHilnNpPqrstTuvwy][-<행수>][-C <행수>][-D <대장치 이름>][-I <문자 또는 문자열>][-S <파일>][-W <너비>][-x <파일 또는 디렉토리>][-X <파일>][--help][--side 파일의 차이점을 겹치는 방식으로 표시-column][--y 파라미터를 사용할 때, 두 파일의 일정한 행 내용이 같으면, 왼쪽의 칸에만 해당 행 내용을 표시합니다.-suppress-line][파일 또는 디렉토리1][파일 또는 디렉토리2]
매개변수와:
-<행수> 보여줄 텍스트의 행 수를 지정합니다. 이 매개변수는-c 또는-u 매개변수를 모두 사용합니다.
-a 또는--text diff 설정은 텍스트 파일을 줄별로 비교합니다.
-b 또는--ignore-space-change 공백 문자의 차이를 확인하지 않습니다。
-B 또는--ignore-blank-lines 비어 있는 행을 확인하지 않습니다。
-c 전체 내용을 표시하고, 차이점을 표시합니다。
-C<행 수> 또는--context<행 수> 와 실행"-c-<행 수>"명령어가 같습니다。
-d 또는--minimal 다른 알고리즘을 사용하여 작은 단위로 비교합니다。
-D<집합 이름> 또는 ifdef<집합 이름> 이 매개변수의 출력 형식은 전처리기 집합에 사용할 수 있습니다。
-e 또는--ed 이 매개변수의 출력 형식은 ed 스크립트 파일에 사용할 수 있습니다。
-f 또는-forward-ed 출력 형식은 ed 스크립트 파일과 유사하지만, 원래 파일의 순서로 차이점을 표시합니다。
-H 또는--speed-large-files 대형 파일을 비교할 때, 속도를 높일 수 있습니다。
-l<문자 또는 문자열> 또는--ignore-matching-lines<문자 또는 문자열> 두 파일이 몇 행에서 다를 때, 이 행들이 옵션에서 지정된 문자 또는 문자열을 모두 포함하고 있으면, 이 두 파일의 차이를 표시하지 않습니다。
-i 또는--ignore-case 대소문자의 차이를 확인하지 않습니다。
-l 또는--paginate 결과를 pr 프로그램에 분페이지합니다。
-n 또는--rcs 비교 결과를 RCS 형식으로 표시합니다。
-N 또는--new-file 비교 디렉토리에서 파일 A가 특정 디렉토리에만 나타나면, 기본적으로 다음과 같이 표시됩니다:
Only in 디렉토리: 파일 A가 사용될 때,-N 매개변수가 있으면, diff는 파일 A를 비어 있는 파일과 비교합니다。
-p 비교하는 파일이 C 언어의 프로그램 코드 파일이면, 차이점이 있는 함수 이름을 표시합니다。
-P 또는--unidirectional-new-file 와-N과 유사하지만, 두 번째 디렉토리가 첫 번째 디렉토리에 없는 파일을 포함하고 있을 때만 이 파일을 비어 있는 파일과 비교합니다。
-q 또는--brief 차이점이 있는지만 표시하고, 상세한 정보는 표시하지 않습니다。
-r 또는--recursive 자식 디렉토리 내의 파일을 비교합니다。
-s 또는--report-identical-files 차이점이 없더라도 정보를 표시합니다。
-S<파일> 또는--starting-file<파일> 비교 디렉토리에서 지정된 파일부터 비교합니다。
-t 또는--expand-tabs 출력 시 tab 문자를 확장합니다。
-T 또는--initial-tab 각 행 앞에 tab 문자를 추가하여 정렬합니다。
-u,-U<열 수> 또는--unified=<열 수> 파일 내용의 차이를 병합된 방식으로 표시합니다。
-v 또는--version 버전 정보를 표시합니다。
-w或--ignore-w 또는-ignore
-all--space 모든 공백 문자를 무시합니다.-W<너비> 또는
-width<너비> left--y 파라미터를 사용할 때, 칸 너비를 지정합니다.
-x<파일 이름 또는 디렉토리> 또는--exclude<파일 이름 또는 디렉토리> 비교 옵션에 지정된 파일이나 디렉토리를 비교하지 않습니다.-X<파일> 또는
-exclude--from<파일> 파일이나 디렉토리 타입을 텍스트 파일로 저장할 수 있으며, =<파일>에서 이 텍스트 파일을 지정할 수 있습니다.-y 또는-side
--by
--side 파일의 차이점을 겹치는 방식으로 표시-help 도움말 표시-column left
--y 파라미터를 사용할 때, 두 파일의 일정한 행 내용이 같으면, 왼쪽의 칸에만 해당 행 내용을 표시합니다.-suppress-lines common-y 파라미터를 사용할 때, 다른 부분만 표시합니다.
[root@localhost test3]# diff log2014.log log2013.log 3c3 < 2014-03 --- > 2013-03 8c8 < 2013-07 --- > 2013-08 11,12d10 < 2013-11 < 2013-12
위의"3c3"과"8c8"은 log2014.log와 log20143log 파일은3행과8행 내용이 다릅니다;11,12d10"은 첫 번째 파일이 두 번째 파일보다 많은11와12행.
[root@localhost test3]# diff log2014.log log2013.log -y -W 50 2013-01 2013-01 2013-02 2013-02 2014-03 | 2013-03 2013-04 2013-04 2013-05 2013-05 2013-06 2013-06 2013-07 2013-07 2013-07 | 2013-08 2013-09 2013-09 2013-10 2013-10 2013-11 < 2013-12 < [root@localhost test3]# diff log2013.log log2014.log -y -W 50 2013-01 2013-01 2013-02 2013-02 2013-03 | 2014-03 2013-04 2013-04 2013-05 2013-05 2013-06 2013-06 2013-07 2013-07 2013-08 | 2013-07 2013-09 2013-09 2013-10 2013-10 > 2013-11 > 2013-12
설명:
"|"은 앞뒤2개 파일 내용이 다릅니다
"<"은 다음 파일이 이전 파일보다 적습니다1행 내용
">"은 다음 파일이 이전 파일보다 많습니다1행 내용