![Diff는 매우 이상하게 동작하여 전체 블록의 짧은 비트가 변경, 제거 또는 추가될 때 긴 블록이 삭제된 것으로 보고합니다.](https://linux55.com/image/137500/Diff%EB%8A%94%20%EB%A7%A4%EC%9A%B0%20%EC%9D%B4%EC%83%81%ED%95%98%EA%B2%8C%20%EB%8F%99%EC%9E%91%ED%95%98%EC%97%AC%20%EC%A0%84%EC%B2%B4%20%EB%B8%94%EB%A1%9D%EC%9D%98%20%EC%A7%A7%EC%9D%80%20%EB%B9%84%ED%8A%B8%EA%B0%80%20%EB%B3%80%EA%B2%BD%2C%20%EC%A0%9C%EA%B1%B0%20%EB%98%90%EB%8A%94%20%EC%B6%94%EA%B0%80%EB%90%A0%20%EB%95%8C%20%EA%B8%B4%20%EB%B8%94%EB%A1%9D%EC%9D%B4%20%EC%82%AD%EC%A0%9C%EB%90%9C%20%EA%B2%83%EC%9C%BC%EB%A1%9C%20%EB%B3%B4%EA%B3%A0%ED%95%A9%EB%8B%88%EB%8B%A4..png)
cut
각 줄의 처음 26자만 보는 코드의 출력인 두 개의 파일이 있습니다 . 두 파일 모두 "총 단면적" 또는 "중성자 수명"과 같이 코드로 측정된 매개변수 목록과 코드에서 사용하는 옵션(예: "MPI_TASKS" 또는 "COMPILE_DATE")이므로 file1은 다음과 같습니다.
param1
param2
...
param2000
File2는 기본적으로 동일해 보이지만 많은 매개변수가 제거되거나 변경되었으며 몇 가지 다른 매개변수가 추가되었습니다.
이러한 변경/추가/삭제가 어디서 발생했는지 보고하는 대신 diff
12행부터 1750행까지 제거되었다는 말을 들었고 file1
파일의 나머지 부분에는 약 300행의 차이가 있음을 발견했습니다. 이러한 차이점 중에도 약 50개 정도의 변경 사항만 보고되고 나머지는 추가/삭제된 내용으로 보고됩니다.
diff
정말 혼란스럽고 왜 이런 일이 일어나는지 모르겠습니다 . 와 같은 몇 가지 옵션을 사용해 보았습니다 -aBCHw
.
사용할 수 있는 더 나은 유틸리티가 있습니까? 이 cut
유틸리티가 문제를 일으킬 수 있습니까?
답변1
기본적으로 diff
일부문맥차이를 둘러싼 각 부분을 이라고 합니다.조각. 컨텍스트를 줄이면(사용하여-C
옵션), 블록 크기를 줄이고 큰(겹치는) 블록을 큰 차이로 보고할 가능성을 줄일 수 있습니다.