Linux

diff 명령어 정리

쓱은감자 2022. 6. 6. 18:40

diff 명령어 정리

더 많은 정보와 설명은 https://jhnyang.tistory.com/220

diff 명령어는 두 파일에 대한 차이점을 알려주는 명령어입니다. 소스 코드나 문서를 수정하고 이전 파일과 달라진 점이나 다른 사람이 작성한 코드와의 차이점을 확인하고 싶을 때 사용합니다.

diff 사용 방법

  • 기본적인 사용법
    • diff {filename1} {filename2}
    • 두 파일이 다르면 결과 출력
    • < 기호는 오른쪽 파일에는 없고 왼쪽 파일에는 있는 경우
    • > 기호는 왼쪽 파일에는 없고 오른쪽 파일에는 있는 경우
    • 첫 줄에 나오는 숫자는 내용이 다른 라인을 나타냄

  • 세 파일을 비교하는 경우
    • diff3 {filename1} {filename2} {filename3}
    • 첫 줄에 나오는 ====는 내용이 다른 파일을 나타내는 줄로 3파일이 모두 다른 것을 나타냅니다.
    • 다음 줄부터는 다른 파일에 대한 내용을 출력하는데 1:3c에서 1:은 내용이 다른 파일을 나타내고 3c는 다른 라인을 나타냅니다.

  • 세 개의 파일 중 하나만 틀린 경우
    • 명령어는 위와 동일
    • 내용도 위와 거의 동일한데 다른 부분은 첫 줄에 이전과 다르게 ====3과 같이 출력됩니다.
    • ====3은 세 파일 중 세 번째 파일이 다르다는 것을 나타냅니다.

diff 옵션

  • b 옵션
    • 연속된 공백을 무시하는 명령어
    • 스페이스바나 탭이 연속으로 두 번, 세 번 입력되어 있어도 하나로 간주
    • diff -b file1 file2
  • i 옵션
    • 대소문자 구분없이 비교할 때 사용하는 옵션
    • diff -i file1 file2
  • r 옵션
    • 디렉토리 안의 파일들을 비교할 때 사용하는 옵션
    • diff -r dir1 dir2
  • u 옵션
    • 기본적인 결과보다 더 많은 정보를 출력하는 옵션
    • -는 왼쪽 파일에는 있고 오른쪽 파일에는 없는 것을 나타냄
    • +는 왼쪽 파일에는 없고 오른쪽 파일에는 있는 것을 나타냄
    • diff -u file1 file2
  • q 옵션
    • 두 파일이 다른 경우 결과 출력
    • 같을 경우에는 출력되는 결과 없음
    • diff -q file1 file2
  • s 옵션
    • 두 파일이 같을 경우 결과 출력
    • 다를 경우 기본적인 동작과 같음
    • diff -s file1 file2