예를 들어, 2개의 구성 파일이 있다고 가정해 보겠습니다. 파일 1:
smtpd_sasl_auth_enable = yes
broken_sasl_auth_clients = yes
smtpd_sasl_authenticated_header = yes
virtual_gid_maps = static:5000
파일 2:
virtual_gid_maps = static:5000
broken_sasl_auth_clients = yes
smtpd_sasl_authenticated_header = yes
자세히 보면 으로 시작하는 줄이 있는 것을 알 수 있는데, virtua_gid_*
파일 1은 파일의 끝에 넣지만, 파일 2는 파일의 시작 부분에 넣습니다.
두 개의 파일이 있다고 가정해 보겠습니다. 두 파일의 행은 같고 위치는 다르지만 위치는 중요하지 않습니다. 중요한 것은 파일이 존재하는지 존재하지 않는지입니다.
내 파일을 어떻게 비교하나요?
답변1
위치가 중요하지 않은 경우 파일을 정렬한 다음 비교를 수행할 수 있습니다. 정렬된 파일을 준비 영역에 저장해야 합니다.
sort file1 > /tmp/file1
sort file2 > /tmp/file2
diff /tmp/file1 /tmp/file2
vimdiff
대신 시도해 볼 수도 있습니다 diff
.
답변2
파일에 간단한 <name> = <value>
줄만 있는 경우(예:) 다음을 수행할 수 있습니다.
$ cat file1 | sort > /tmp/sortedfile1
$ cat file2 | sort > /tmp/sortedfile2
$ diff /tmp/sortedfile1 /sortedfile2
주변에 같은 양의 공백이 있는 한 작동합니다.=
답변3
서브셸을 사용하면 임시 파일 사용을 피할 수 있습니다.
diff <(sort fileA) <(sort fileB)
또 다른 유용한 프로그램은meld
이것은 매우 좋은 GUI입니다 diff
.