디렉토리 A의 파일이 디렉토리 B의 파일과 동일하면 해당 파일을 복사해서는 안된다는 점에주의를 기울여 디렉토리 A에서 디렉토리 B로 파일 세트를 복사하고 싶습니다. 업데이트). 내 자신의 스크립트를 작성하지 않고 기존 도구로 그렇게 할 수있는 방법이 있습니까?
유스 케이스를 조금 더 정교하게하기 위해 : 나는 .c
임시 디렉토리에 많은 파일을 자동 생성하고 있다 (무조건 모든 파일을 무조건 생성 해야하는 방법으로). 그리고 파일을 다시 생성 할 때만 복사하고 싶다. 실제 소스 디렉토리로 변경되어 변경되지 않은 디렉토리는 수정하지 않고 (이전 생성 시간과 함께) make
다시 컴파일 할 필요가 없음을 알 수 있습니다. (생성 된 모든 파일이 .c
파일 인 것은 아니므로 텍스트 비교보다는 이진 비교를 수행해야합니다.)
(참고로이 내가 있슴 질문 밖으로 성장 https://stackoverflow.com/questions/8981552/speeding-up-file-comparions-with-cmp-on-cygwin/8981762#8981762 내가하려고했던 곳, 이 작업을 수행하는 데 사용했던 스크립트 파일의 속도를 높이기 위해, 나 자신에게 직접 스크립트를 작성하는 것보다 더 좋은 방법이 있는지 묻습니다. 특히 쉘 에서이 작업을 수행하는 간단한 방법 때문에 스크립트는 cmp
모든 파일 쌍에서 와 같은 것을 호출 하며 모든 프로세스를 시작하는 데 너무 오래 걸립니다.)
rsync -avnc
먼 길 을 사용 하십시오 rsync --archive --verbose --dry-run --checksum
.
diff -qr dirA dirB
고유 한 파일을 확인하는 데 사용할 수 있습니다 .dirA
dirB