고유한 파일을 새 디렉터리에 복사하시겠습니까?

고유한 파일을 새 디렉터리에 복사하시겠습니까?

나에게는 다양한 시점의 다양한 미디어(예: 사진, 음악)가 포함된 많은 폴더가 있습니다. 서로 다른 폴더에는 일부 공통 콘텐츠가 있지만(예: 사진이 2개의 폴더에 있을 수 있음) 대부분은 고유해야 합니다. 다른 폴더에 있는 파일 이름은 보장되지 않습니다. 예를 들어 사진은 A/foo.png및 로 표시될 수 있습니다 B/bar.png. 또는 A/baz.pngB/baz.png동일한 파일이 아닐 수도 있습니다.

모든 미디어를 단일 폴더로 통합하고 중복 항목을 제거하는 방법을 찾고 있습니다. 이상적으로는 파일이 원래 어디에서 왔는지에 대한 추적이 있으면 좋겠지만(예: 파일이 output/001.png어디 에서 왔는지 A/baz.png등을 아는 것 등) 반드시 필요한 것은 아닙니다. 파일 수가 많기 때문에(1M+ 파일) 속도가 빠를수록 좋습니다. :)

처음에는 폴더의 모든 파일을 새 폴더에 복사하려고 시도했지만 시간이 오래 걸리고 파일 이름이 동일한 경우에만 중복 제거가 발생했는데 이 경우에는 그렇지 않았습니다. 이 명령을 더 빠르게 실행할 수 있는 방법이 있을 것 같지만 xargs -P방법은 잘 모르겠습니다.

find . -type f -exec cp {} \;

2단계 시스템이나 이와 유사한 시스템이 좋을 것입니다. 예를 들어 먼저 모든 파일을 병합하고 새 폴더로 이름을 변경하여 모두 고유한 파일 이름을 갖게 한 다음 중복된 파일을 필터링합니다. 이 작업을 수행할 만큼 저장 공간이 충분하지만 어떻게 해야 할지 모르겠습니다.

관련 정보