Beyond Compare가 창에서하는 것과 같은 디렉토리와 파일을 비교할 무언가를 찾고 있습니다.
주로 소스 제어를 사용하기위한 것이지만 배포에도 사용해야합니다.
Beyond Compare가 창에서하는 것과 같은 디렉토리와 파일을 비교할 무언가를 찾고 있습니다.
주로 소스 제어를 사용하기위한 것이지만 배포에도 사용해야합니다.
답변:
Meld는 파일과 디렉토리를 비교하고 병합 할 수있는 도구입니다. 표준 diff
및 patch
명령 행 도구 와 유사한 GUI 입니다. (자세한 내용은 man diff 및 man patch 를 참조하십시오)
beyond compare
아래 참조). 이럴 융합하는 우수
Diff는 당신의 친구입니다.
diff -ur path1 path2
경로 1과 경로 2 사이에 공통 인 모든 파일을 비교합니다.
당신이 변경하는 경우 -ur
에 -urN
그 또한 경로 중 하나에서만 존재하는 파일의 내용을 표시합니다.
colordiff
및 사용colordiff -ur path1 path2
'Beyond Compare'은 Linux에서도 사용할 수 있습니다.
다운로드 URL을 확인하십시오 : http://www.scootersoftware.com/download.php
이 블로그 항목에서 영감을 얻었습니다 .
다른 파일 나열 :
diff -qr folder1 folder2
내용 나열 :
diff -Naur folder1 folder2
두 디렉토리가 동일한 시스템에 없으면 rsync
가장 쉬운 솔루션 일 수 있습니다. 일반적으로 rsync
디렉토리를 동기화하기 위해 사용되지만, 상세 및 드라이 모드로 실행할 수 있으므로 변경해야 할 파일 만 나열합니다.
rsync -rvnc --delete folder1 server:/path/to/folder2
c
타임 스탬프와 파일 크기를 기준으로 파일을 비교하여 모든 것을 가속화하려는 경우 생략 할 수 있습니다 .
rsync -rvn --delete folder1 server:/path/to/folder2
Krusader는 폴더 내용을 비교하여 보여주는 다양한 도구 (소프트웨어 센터에서 사용 가능)이며 다양한 옵션과 동기화 할 수 있습니다. 동기화 및 비교하는 동안 필터링 할 수 있습니다.
파일 내용을 비교하기 위해 단순히 두 파일을 표시하려면 "파일"> "내용 비교"를 선택하고 문자를 기준으로 비교합니다. krusader에서 사용하는 기본 비교 도구는 기본 KDE 도구 " Kompare "입니다. krusader를 설정하여 위와 같은 다른 비교 도구를 사용할 수 있습니다.
이것은 내가 찾은 가장 완벽한 솔루션이며 매우 편리합니다. 그리고 자정 사령관 (노턴 사령관 구문)이 사용하는 모든 기능 키 바인딩을 지원합니다.
2 주 전에 해시 딥 에 대해 배웠습니다 . 그리고 몇 가지 강력한 장점이 있습니다.
meld
, 매우 큰 폴더에 적합합니다. 어디 meld
(차단) 매우 느린 및 UI 응답하지 않게, hashdeep은 일정한 속도로 작동합니다rsync
hashdeep은 다른 디렉토리에서 동일한 내용의 파일을 이동시킵니다.자세한 출력은 다음과 같습니다.
...
foo/bar.txt: Known file not used
x/foo/M0824_2L.JPG: Moved from y/P1010998.JPG
hashdeep: Audit failed
Input files examined: 0
Known files expecting: 0
Files matched: 6233
Files partially matched: 0
Files moved: 3695
New files found: 19257
Known files not found: 4713
이 비교를 수행하는 좋은 방법은 " find "를 " md5sum " 과 함께 사용 하고 " diff "를 사용하는 것입니다.
예:
find를 사용하여 디렉토리의 모든 파일을 나열한 다음 각 파일의 md5 해시를 계산하고 파일로 파이프하십시오.
$find /dir1/ -type f -exec md5sum {} \; > dir1.txt
다른 디렉토리와 동일한 절차를 수행하십시오.
$find /dir2/ -type f -exec md5sum {} \; > dir2.txt
그런 다음 결과 두 파일을 "diff"와 비교하십시오.
$diff dir1.txt dir2.txt
이 전략은 비교할 두 디렉토리가 동일한 시스템에 있지 않고 두 디렉토리에서 파일이 동일한 지 확인해야 할 때 매우 유용합니다.
작업을 수행하는 또 다른 좋은 방법은 git을 사용하는 것입니다.
git diff --no-index dir1/ dir2/
친애하는!
FreeFileSync 도 시도하십시오 . 그것은 적절한 인터페이스, 수용 가능한 비교 속도, 비교 결과의 좋은 필터링, 다른 동기화 방법을 가지고 있습니다. 특정 폴더 또는 파일이 변경 될 때 FreeFileSync (실제로 모든 명령 또는 스크립트)를 시작할 수있는 폴더 모니터링 도구 (RealTimeSync)가 제공됩니다. 시도해 볼 가치가 있습니다.
그것에 대해 더 많은 정보를 원하시면 여기 또는 여기 당신이 가지고 PPA를 너무
그들의 페이지에서 주요 기능 :
파일을 바이트 단위 또는 날짜별로 비교하고 동기화하십시오.
제한 사항 없음 : 임의의 수의 파일을 동기화 할 수 있습니다.
유니 코드 지원
네트워크 지원.
매우 긴 파일 이름 (MAX_PATH = 260 자 이상)을 기본적으로 지원합니다.
삭제 된 파일 전파 및 충돌 감지를위한 동기화 데이터베이스
고유 한 구성으로 여러 폴더 쌍 지원
Windows / Linux Symbolic Links 및 Windows Junction Point를 완벽하게 지원합니다.
린 (Lean) 및 쉽게 액세스 할 수있는 UI : 속도 및 방대한 데이터 세트에 최적화되어 있습니다.
알고리즘은 C ++로 완전히 코딩되었습니다.
최대 성능을 위해 최적화 된 모든 진행률 표시기!
GUI를 사용하거나 사용하지 않고 자동화 된 동기화를위한 배치 작업을 작성하십시오.
유용성에 초점 :
UI에서 필요한 기능 만 : 오버로드 된 메뉴 나 아이콘 정글이 없습니다.
끌어서 놓기를 통해 모든 폴더를 선택하십시오.
마지막으로 사용한 구성 및 화면 설정이 자동으로 저장됩니다.
끌어서 놓기,로드 버튼 또는 명령 줄을 통해 다른 구성을 유지하고로드합니다.
두 번 클릭하여 외부 응용 프로그램을 시작합니다 (예 : Windows 탐색기에서 파일 표시)
모든 그리드 데이터를 텍스트로 복사하여 붙여 넣기
주 그리드에서 불필요한 / 임시 파일을 직접 삭제하십시오.
상황에 맞는 메뉴를 마우스 오른쪽 버튼으로 클릭하십시오.
종합적인 상태 정보 및 오류보고
이름, 크기 또는 날짜별로 파일 목록을 정렬하십시오.
4GB보다 큰 파일 크기를 지원합니다.
파일을 삭제 / 덮어 쓰지 않고 휴지통으로 옮기는 옵션.
기본 필터를 사용하여 "\ RECYCLER"및 "\ System Volume Information"디렉토리를 무시하십시오. (Windows 만 해당)
현지화 된 버전은 여러 언어로 제공됩니다.
복사 전 삭제 : 대규모 동기화 작업의 디스크 공간 부족을 피하십시오.
동기화에서 파일을 포함 / 제외하도록 필터링 기능 (다시 비교하지 않아도 됨)
특정 파일을 동기화에서 일시적으로 포함 / 제외합니다.
FAT / FAT32 볼륨에서 일광 절약 시간제 변경 사항을 자동으로 처리합니다.
휴대용 버전 사용 가능 (설치 프로그램을 통해 선택 가능).
기본 64 비트 버전.
FreeFileSync 내에서 자동으로 업데이트를 확인하십시오.
Windows 볼륨 섀도 복사본 서비스를 사용하여 잠긴 파일을 복사하십시오. (Windows 만 해당)
디렉토리 이름 내에 매크로 % time %, % date %를 사용하여 정기적 인 백업 생성
동기화시 파일 및 폴더 생성 / 액세스 / 수정 시간 복사
여러 동기화 프로세스 (예 : 여러 작성자, 동일한 네트워크 공유)를 허용하는 고급 잠금 전략
삭제 된 파일을 관리하고 휴지통 또는 사용자가 지정한 폴더로 이동하여 추가 할 수 있습니다. 단점 : 프로그램 문서는 Linux보다는 Windows에 중점을 둔다. 그러나 그것은 잘 작동합니다.
Jfilesync를 최고의 선택으로 만들 수있는 크로스 플랫폼, 손쉬운 연결 및 프로파일 저장 기능
File_1.txt
Line1
Line2
File_2.txt
Line1
Line 2
다음 명령을 사용할 수 있습니다 cmp
.
cmp -b "File_1.txt" "File_2.txt"
출력은
a b differ: byte 11, line 2 is 62 2 40
diff 명령을 사용할 수 있습니다 :
diff -r --brief dir1 dir2
man diff
-r, --recursive
recursively compare any subdirectories found
-q, --brief
report only when files differ