비슷한 레이아웃을 가진 두 개의 디렉토리 트리가 있습니다.
.
|-- dir1
| |-- a
| | |-- file1.txt
| | `-- file2.txt
| |-- b
| | `-- file3.txt
| `-- c
| `-- file4.txt
`-- dir2
|-- a
| |-- file5.txt
| `-- file6.txt
|-- b
| |-- file7.txt
| `-- file8.txt
`-- c
|-- file10.txt
`-- file9.txt
dir1 및 dir2 디렉토리 트리를 병합하여 작성하고 싶습니다.
merged/
|-- a
| |-- file1.txt
| |-- file2.txt
| |-- file5.txt
| `-- file6.txt
|-- b
| |-- file3.txt
| |-- file7.txt
| `-- file8.txt
`-- c
|-- file10.txt
|-- file4.txt
`-- file9.txt
"cp"명령을 사용하여이 작업을 수행 할 수 있다는 것을 알고 있지만 병합하려는 실제 디렉토리가 실제로 크고 파일 (수백만)이 많기 때문에 복사하는 대신 파일을 이동하고 싶습니다. "mv"를 사용하면 디렉토리 이름이 충돌하여 "파일이 있습니다"오류가 발생합니다.
업데이트 : 두 디렉토리 트리 사이에 중복 파일이 없다고 가정 할 수 있습니다.