Linux를 사용하여 두 텍스트 파일을 비교하는 방법

이 가이드에서는 Linux를 사용하여 두 파일을 비교하고 그 차이를 화면이나 파일로 출력하는 방법을 보여줍니다.

Linux를 사용하여 파일을 비교하기 위해 특별한 소프트웨어를 설치할 필요는 없지만 터미널 창을 여는 방법을 알아야 합니다 .

링크 된 가이드가 보여 주듯이 리눅스를 사용하여 터미널 창을 여는 많은 방법이 있습니다. 가장 간단한 방법은 CTRL, ALT 및 T 키를 동시에 누르는 것입니다.

비교할 파일 만들기

이 가이드를 따라 가려면 "file1"이라는 파일을 만들고 다음 텍스트를 입력하십시오 :

벽에 서있는 녹색 병 10 개

벽에 서있는 녹색 병 10 개

녹색 병이 실수로 떨어지는 경우

벽에 서있는 9 개의 녹색 병이있을 것입니다.

다음 지침에 따라 파일을 만들 수 있습니다.

  1. 다음 명령을 입력하여 파일을 엽니 다. nano file1
  2. nano 편집기에 텍스트를 입력하십시오.
  3. CTRL과 O를 눌러 파일을 저장하십시오.
  4. CTRL과 X를 눌러 파일을 종료하십시오.

이제 "file2"라는 또 다른 파일을 만들고 다음 텍스트를 입력하십시오 :

벽에 서있는 녹색 병 10 개

1 개의 녹색 병이 실수로 떨어지는 경우

벽에 서있는 9 개의 녹색 병이있을거야.

다음 지침에 따라 파일을 만들 수 있습니다.

  1. 다음 명령을 입력하여 파일을 엽니 다. nano file2
  2. nano 편집기에 텍스트를 입력하십시오.
  3. CTRL과 O를 눌러 파일을 저장하십시오.
  4. CTRL과 X를 눌러 파일을 종료하십시오.

Linux를 사용하여 두 파일을 비교하는 방법

두 파일 사이의 차이점을 표시하기 위해 Linux에서 사용되는 명령을 diff 명령이라고합니다.

diff 명령의 가장 간단한 형식은 다음과 같습니다.

diff file1 file2

파일이 동일하면이 명령을 사용할 때 출력이 없지만 차이점이 있으므로 다음과 비슷한 출력이 표시됩니다.

2,4c2,3

<벽에 서있는 녹색 병 10 개

<만약 한 병의 녹색 병이 우발적으로 떨어지면

<벽에 서있는 9 개의 녹색 병

...

> 1 개의 녹색 병이 우발적으로 떨어지는 경우

> 벽에 서있는 9 개의 녹색 병

처음에는 출력이 혼란 스러울 수 있지만 일단 용어를 이해하면 상당히 논리적입니다.

자신의 눈을 사용하면 두 파일의 차이점을 알 수 있습니다.

diff 명령의 출력은 첫 번째 파일의 2 번과 4 번 줄과 두 번째 파일의 2 번과 3 번 줄 사이에 차이점이 있음을 보여줍니다.

그런 다음 첫 번째 파일에서 2에서 4까지의 행을 나열하고 두 번째 파일에서 두 개의 다른 행을 나열합니다.

파일이 다른 경우 표시하는 방법

파일이 다른지, 어떤 줄이 다른지에 대해 관심이 없으면 다음 명령을 실행할 수 있습니다.

diff -q file1 file2

파일이 다른 경우 다음이 표시됩니다.

파일 file1과 file2는 다릅니다.

파일이 동일하면 아무 것도 표시되지 않습니다.

파일이 동일한 경우 메시지를 표시하는 방법

명령을 실행할 때 올바르게 작동했음을 알고 싶으면 파일이 동일하거나 다른지 여부에 관계없이 diff 명령을 실행할 때 메시지가 표시되기를 원합니다

diff 명령을 사용하여이 요구 사항을 충족 시키려면 다음 명령을 사용할 수 있습니다.

diff -s file1 file2

이제 파일이 동일하면 다음 메시지가 나타납니다.

파일 file1과 file2는 동일합니다.

차이점을 나란히 만드는 방법

차이점이 많으면 두 파일간에 실제로 차이점이 무엇인지 혼동 될 수 있습니다.

결과가 나란히 표시되도록 diff 명령의 출력을 변경할 수 있습니다. 이렇게하려면 다음 명령을 실행하십시오.

diff -y file1 file2

파일의 출력에 | 두 줄 사이의 차이를 나타내는 기호, 제거 된 줄을 표시하는 줄 기호 및 추가 된 줄을 표시하는 줄 기호.

흥미롭게도 데모 파일을 사용하여 명령을 실행하면 삭제 된 파일 2의 마지막 줄을 제외하고 모든 줄이 다르게 표시됩니다.

열 너비 제한

두 파일을 나란히 비교할 때 파일에 많은 텍스트 열이있는 경우 읽기가 어려울 수 있습니다.

컬럼의 수를 제한하려면 다음 명령을 사용하십시오.

diff - 폭 = 5 파일 file2

파일을 비교할 때 대소 문자 차이를 무시하는 방법

두 파일을 비교하기를 원하지만 문자의 대소 문자가 두 파일간에 같은지 여부를 신경 쓰지 않으면 다음 명령을 사용할 수 있습니다.

diff -i file1 file2

줄 끝의 공백을 무시하는 방법

차이점이 많은 파일을 비교할 때 줄 끝의 공백으로 인해 차이가 발생하는 경우 다음 명령을 실행하여 변경 사항으로 표시하지 않을 수 있습니다.

차이 -Z 파일 1 파일 2

두 파일 간의 모든 공백 차이를 무시하는 방법

파일의 텍스트에만 관심이 있고 다른 공간보다 많은 공간이 있는지 여부에 상관하지 않는 경우 다음 명령을 사용할 수 있습니다.

diff -w file1 file2

두 파일을 비교할 때 빈 줄을 무시하는 방법

한 파일에 여분의 빈 줄이 포함될 수 있다고 생각하지 않는다면 다음 명령을 사용하여 파일을 비교할 수 있습니다.

diff -B file1 file2

개요

자세한 정보는 diff 명령 매뉴얼을 참조하십시오.

남자 차이

diff 명령은 가장 단순한 형태로 사용되어 2 개의 파일 간의 차이점을 보여줄 수 있지만이 파일을 사용 하여 Linux 패치 명령에 대한안내서 에서처럼 패치 전략의 일부로 diff 파일 을 작성할 수도 있습니다.

파일을 비교하는 데 사용할 수있는 또 다른 명령은 이 설명서 에서처럼 cmp 명령 입니다. 이것은 파일을 바이트 단위로 비교합니다.