का उपयोग करके सब कुछ कॉपी करें, मैं एक पावरशेल स्क्रिप्ट लिखने में सक्षम होना चाहूंगा जो एक फ़ोल्डर (या फ़ोल्डरों का सेट) ले लेगा और उन्हें डुप्लिकेट करने के लिए जिसमें फ़ोल्डर संरचना (बिना फाइलें) बनाई जा सकती हैं, जहां फ़ाइल संरचना (फ़ोल्डरों के बिना) बनाई जा सकती है, या जिसमें दोनों फाइलें (सभी या चयनित वाले) और फ़ोल्डर्स बनाए जा सकते हैं।फ़ाइलों के बिना फ़ोल्डर्स, फ़ोल्डर्स के बिना फाइलें, या पावरशेल
Example:
C:\ProdData has 3 subfolders in it
C:\ProdData\Fld1
C:\ProdData\Fld2
C:\ProdData\Fld3 - has 2 subfolders under it
C:\ProdData\Fld3\MyFolder1
C:\ProdData\Fld3\MyFolder2
उपरोक्त प्रत्येक फ़ोल्डर में विभिन्न फ़ाइल एक्सटेंशन के विभिन्न आकारों की विभिन्न संख्याएं हैं।
मैं एक PowerShell स्क्रिप्ट जो कि फ़ोल्डर संरचना कहीं और नकल होता है करने के लिए मुझे फ़ोल्डर संरचना केवल, फ़ाइलें केवल, या फ़ाइलों और फ़ोल्डरों कॉपी करने का एक विकल्प देने के लिए चाहते हैं।
ऊपर में, मैं सी कॉपी करने के लिए सक्षम होने के लिए करना चाहते हैं: किसी अन्य फ़ोल्डर में \ ProdData, अनिवार्य रूप से TestData को ProdData का नाम बदलने (अर्थात, सी है: \ ProdDataसी में कॉपी किया: \ TestData), या पूरे फ़ोल्डर संरचना की प्रतिलिपि बनाने के लिए।
कुछ और का एक सबफ़ोल्डर है कि किसी अन्य फ़ोल्डर में C:\ProdData
: C:\TestArea\TestFolders\2012-04-01\TestData\ProdData\Fld1
, आदि ...
और चुनिंदा फोल्डर, फाइल या दोनों शामिल करने के लिए चुनें।
आदर्श समाधान (केवल फ़ोल्डर्स के लिए) फ़ोल्डर संरचना लेना, निर्यात/सहेजना, इसे पढ़ना, और उसी संरचना को कहीं और बनाना होगा। कुछ समाधान मैंने पाया है कि उन्होंने केवल फ़ोल्डर संरचना की प्रतिलिपि बनाई है, लेकिन यदि डेटा मौजूद है, तो यह भी कॉपी हो जाता है और आप एक या दूसरे को बाहर नहीं कर सकते हैं। मैं केवल फाइलों-आवश्यकता है कि पथ अर्द्ध बरकरार रखता है के लिए एक आंशिक समाधान है, लेकिन यह एक फ़ाइल ले जाएगा:
c:\ProdData\Fld1\MyFile.dat
और इसे करने के लिए कॉपी:
c:\TestData\yyyyMMdd_hhmmss_ProdData_Fld1_MyFile.dat
लेकिन वह कुछ ऐसा है जो कर सकते थे नहीं है आसानी से डीकोड किया जा सकता है और स्रोत संरचना को फिर से एकीकृत करना असंभव होगा। मैं इस पहिये को फिर से आविष्कार किए बिना इसे पूरा करने के बारे में किसी भी विचार की सराहना करता हूं।
सुझाव के लिए धन्यवाद के बिना। मेरे पास रोबोकॉपी भी स्थापित नहीं था, और यह काफी अच्छी तरह से आवश्यकताओं के अनुरूप है। मैं एक फ़ाइल में संरचना के लिए क्या कर रहा था, एक टेक्स्ट फ़ाइल में शो-ट्री पाइप करना था। इसने एक और टुकड़ा पूरा किया जो मैं बाद में था। कोई भी चीज यह सब नहीं करेगी, लेकिन 3 अपेक्षाकृत सीधा टुकड़े एक साथ मिलकर मुझे चाहिए। आपकी मदद के लिए धन्यवाद! –
फ़्लैटन एक के लिए, आप मध्य भाग को छोड़ सकते हैं और गेट-चाइल्ड इटिम (और रोबोकॉपी के बजाय कॉपी-आइटम) पर -फाइल विकल्प का उपयोग कर सकते हैं: Get-ChildItem $ Source -Recurse -File | Foreach-Object {कॉपी-आइटम $ _। पूर्णनाम $ dest}। हालांकि एक बड़ा अंतर नहीं है। – Brandon
@ ब्रैंडन अच्छा बिंदु। जब तक आप पावरहेल 3 पर हों, तब तक आप निश्चित रूप से ऐसा कर सकते हैं ('-फाइल' और '-डायरेक्टरी' पैरामीटर v3 तक मौजूद नहीं थे)। – ajk