मैं एक नेटवर्क शेयर से ऐसा ही करने की कोशिश कर रहा हूं।
SET MoveDirSource=\\Server\Folder
SET MoveDirDestination=Z:\Folder
विंडोज 7 मशीन पर परीक्षणों से मेरे निष्कर्ष और समाधान यहां दिए गए हैं।
सुझाव:
ROBOCOPY "%MoveDirSource%" "%MoveDirDestination%" /MOVE /E
समस्या: स्रोत फ़ोल्डर को ले जाता है।
सुझाव:
ROBOCOPY "%MoveDirSource%" "%MoveDirDestination%" /MOVE /E /XD "%MoveDirSource%"
समस्या: फिर भी स्रोत फ़ोल्डर ले जाता है।
सुझाव:
ROBOCOPY "%MoveDirSource%" "%MoveDirDestination%" /MOV /E
समस्या: स्रोत फ़ोल्डर में पीछे खाली फ़ोल्डर संरचना छोड़ता है।
काम कर समाधान:
MKDIR "%MoveDirDestination%"
FOR %%i IN ("%MoveDirSource%\*") DO MOVE /Y "%%i" "%MoveDirDestination%\%%~nxi"
FOR /D %%i IN ("%MoveDirSource%\*") DO ROBOCOPY /MOVE /E "%%i" "%MoveDirDestination%\%%~nxi"
पहली दो पंक्तियाँ शीर्ष स्तर की फ़ाइलें, तीसरी चाल फ़ोल्डर। ध्यान दें कि डबल %% एक बैच फ़ाइल में उपयोग के लिए है, एक कमांड लाइन में चिपकाने के लिए इन्हें एक प्रतिशत अंक में बदलना होगा।
~ nxi गंतव्य में एक उदाहरण के लिए विविधता है (देखें / देखें?) जहां ~ nxi आइटम के नाम और विस्तार का प्रतिनिधित्व करता है जिसके माध्यम से वर्तमान में लूप किया जा रहा है।
रोबोकॉपी प्रत्येक प्रयास के बीच एक लाख बार दौड़ने और 30 सेकंड के लिए चूक करता है, इसलिए आप रोबोकॉपी तर्कों में / R: 1 / W: 1 जोड़ना चाह सकते हैं ।