2009-12-15 16 views
57

पर सामग्री मैं एक फ़ोल्डर की सामग्री लेने की कोशिश कर रहा हूं और PowerShell 1.0 का उपयोग करके इसे दूसरे पर कॉपी करने की कोशिश कर रहा हूं। बहुत आसान सामान और यह सभी Copy-Item $from $to -recurse का उपयोग करके ठीक काम करता है अगर मैं किसी स्थानीय फ़ोल्डर से स्थानीय फ़ोल्डर में प्रतिलिपि बना रहा हूं। हालांकि, यदि $to चर एक यूएनसी पथ है, तो यह केवल $from निर्देशिका की प्रतिलिपि बनाने के लिए प्रतीत होता है, न केवल इसकी सामग्री।कॉपी-आइटम प्रतियां निर्देशिका के साथ-साथ यूएनसी पथ

उदा।

$from = "c:\temp\rhysc\" 
$to = "\\OtherMachineName\ShareFolder\" 
Copy-Item $from $to -recurse 

... ऊपर समाप्त होता है सिर्फ फ़ोल्डर की सामग्री की प्रतिलिपि के बजाय एक फ़ोल्डर \\OtherMachineName\ShareFolder\rhysc बनाने।

मैं $from निर्देशिका की संरचना है कि मैं (सब कुछ $to फ़ोल्डर की जड़ में फेंक दिया गया) पर तो मेरे पाइपिंग में बुनियादी प्रयास काम नहीं किया कॉपी करने हूँ बनाए रखना चाहते हैं

Get-ChildItem $from -recurse | Copy-Item -destination $to 
+0

क्या आप वाकई स्थानीय प्रति भी निर्देशिका कॉपी नहीं किया है? यही वह व्यवहार है जिसे मैं तब तक देखता हूं जब तक आप डेविड सुझाव नहीं देते। –

+0

हाँ, 100% यकीन है, मेरे परीक्षण इस पर भरोसा कर रहे थे। जब मैंने यूएनसी के रास्ते को बदल दिया तो यह केवल बदले व्यवहार को तोड़ दिया। – RhysC

+0

यह भी देखें [मैं एक निर्देशिका की प्रतिलिपि कैसे बना सकता हूं, अगर यह पावरहेल का उपयोग कर मौजूद है तो इसकी सामग्री को ओवरराइट कर रहा है?] (Http://superuser.com/q/544520) –

उत्तर

73

प्रयास करें:

$from = "c:\temp\rhysc\*"

+6

मुझे बेवकूफ लगता है, और मैं तुमसे प्यार करता हूँ। चियर्स! – RhysC

+2

मैन, जिसने मुझे _hours_ लिया - धन्यवाद! –

+7

शक्तिशक्ति 3 मुझे तारांकन और उपयोग-रिस्क को छोड़ना पड़ा। – AnneTheAgile