मेरे पास समान लेआउट वाले दो निर्देशिका पेड़ हैं, अर्थात
.
|-- 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" का उपयोग करता हूं तो मुझे परस्पर विरोधी निर्देशिका नामों के कारण "फ़ाइल मौजूद है" त्रुटि मिलती है।
अद्यतन: आप मान सकते हैं कि दो निर्देशिका पेड़ों के बीच कोई डुप्लिकेट फ़ाइलें नहीं हैं।