2008-10-29 12 views
53

मुझे फ़ोल्डर्स के एक सेट से दूसरे फ़ोल्डर में डीएलएल और पीडीबी फ़ाइलों का एक सेट कॉपी करने की आवश्यकता है। मैं लक्ष्य फ़ोल्डर में फ़ोल्डर पदानुक्रम को फिर से बनाना नहीं चाहता हूं। मैं विंडोज टूल्स में निर्मित का उपयोग करना चाहता हूं, उदा। डॉस आदेश।मैं एक विशिष्ट पैटर्न की फ़ाइलों को विंडोज पर एक फ्लैट फ़ोल्डर में दोबारा कैसे कॉपी कर सकता हूं?

उत्तर

95
mkdir targetDir 
for /r %x in (*.dll, *pdb) do copy "%x" targetDir\ 

उपरोक्त आदेश के अंत में/वाई का उपयोग करें यदि आप एकाधिक फाइलों की प्रतिलिपि बना रहे हैं और "हाँ" का जवाब नहीं देना चाहते हैं।

+0

अच्छा एक। वाक्यविन्यास के बारे में सुनिश्चित नहीं था। – Ady

+0

बिना कॉमा –

+13

बैच फ़ाइल में "%% x" का उपयोग करें – bob

-2

मुझे किसी भी कमांड लाइन उपकरण से अवगत नहीं है जो यह सीधे करता है, लेकिन आप उप फ़ोल्डरों के माध्यम से लूप करने के लिए बैच स्क्रिप्ट बना सकते हैं, और अपनी आवश्यक फ़ाइलों की प्रतिलिपि बना सकते हैं।

हालांकि यदि आप उन्हें एक ही फ़ोल्डर में रखते हैं तो आप डुप्लिकेट फ़ाइल नामों वाली फ़ाइलों के साथ समाप्त हो सकते हैं।

-1
@echo off 
if %1'==' goto usage 
if %2'==' goto usage 
if %3'==' goto usage 
for /D %%F in (%1\*) do xcopy %%F\%2 %3 /D /Y 
for /D %%F in (%1\*.) do call TreeCopy %%F %2 %3 
goto end 
:usage 
@echo Usage: TreeCopy [Source folder] [Search pattern] [Destination folder] 
@echo Example: TreeCopy C:\Project\UDI *.xsd C:\Project\UDI\SOA\Deploy\Metadata 
:end 
35

आदेश XCOPY

रिकर्सिवली नकल फ़ोल्डर का उदाहरण:

mkdir DestFolder 
xcopy SrcFolder DestFolder /E 

(के रूप में टिप्पणी निम्नलिखित WIKI कि आदेश में नीचे वर्णित डॉस 3.2 के बाद उपलब्ध कराया गया था)

+2

+1। नोट, हालांकि, XCOPY सिर्फ विंडोज 7 में नहीं है ... यह हमेशा के लिए रहा है (http://en.wikipedia.org/wiki/XCOPY के अनुसार, DOS 3.2 के बाद से) –

+2

किसी के लिए सहायक हो सकता है लेकिन नहीं प्रतीत होता है कि ** "मैं लक्ष्य फ़ोल्डर में फ़ोल्डर पदानुक्रम को फिर से बनाना नहीं चाहता हूं।" ** ओपी से। – nrodic

+0

@nrodic, अगर मैं इसे सही ढंग से समझता हूं तो यह उम्मीद मैन्युअल रूप से स्रोत फ़ोल्डर्स पदानुक्रम के मनोरंजन से बचने से संबंधित है, इसलिए उपरोक्त आदेश एसआरसीफ़ोल्डर को पूरी फ़ोल्डर संरचना को रिकर्सली (और फाइल) के साथ प्रतिलिपि बनाता है। – Bronek

0

सुनिश्चित करें कि आपके पास अपने पथ में रिक्त स्थान होने पर उद्धरण सही हैं।

यह मेरे टीएफएस बिल्ड सर्वर के लिए मेरा पोस्टबिल्ड कार्यक्रम है (यही कारण है कि "%%" है)। मुझे कॉपी करने के लिए सभी टेस्ट फाइलों की आवश्यकता थी।

if not exist "$(TargetDir)..\SingleFolderOutput" mkdir -p "$(TargetDir)..\SingleFolderOutput" 

for /r **%%x** in (*.dll, *.pdb, *.xml, *.xaml, *.exe, *.exe.config) do xcopy **"%%x"** "$(TargetDir)..\SingleFolderOutput" /Y 
संबंधित मुद्दे

 संबंधित मुद्दे