बैच स्क्रिप्टिंग - कई निर्देशिकाओं में एक सबफ़ोल्डर (फ़ाइलों / फ़ोल्डरों) को कैसे हटाएं


0

मुझे निर्देशिका संरचना को इस तरह से देखने के लिए बैच फ़ाइल की आवश्यकता है

C: \ CruiseControl \ ProjectArtifacts \ ProjectName1 \ लॉग्स   C: \ CruiseControl \ ProjectArtifacts \ ProjectName1 \ एसआरसी   C: \ CruiseControl \ ProjectArtifacts \ ProjectName1 \ डाटा   C: \ CruiseControl \ ProjectArtifacts \ ProjectName2 \ लॉग्स   C: \ CruiseControl \ ProjectArtifacts \ ProjectName2 \ एसआरसी   C: \ CruiseControl \ ProjectArtifacts \ ProjectName2 \ डाटा   C: \ CruiseControl \ ProjectArtifacts \ ProjectName3 \ लॉग्स   C: \ CruiseControl \ ProjectArtifacts \ ProjectName3 \ एसआरसी   C: \ CruiseControl \ ProjectArtifacts \ ProjectName3 \ डाटा

और इसी तरह...

प्रोजेक्ट का नाम हमेशा अद्वितीय होता है और ProjectName फ़ोल्डर पर 100 भिन्नताएँ हो सकती हैं।

मैं Src फ़ोल्डर और प्रत्येक फ़ाइल / फ़ोल्डर को प्रत्येक प्रोजेक्ट के लिए हटाना चाहता हूं। लॉग और डेटा फ़ोल्डर को इस प्रक्रिया में हटाया नहीं जाना चाहिए। मैं ऐसा कैसे कर सकता हूं?

मुझे बताएं यदि आपको अधिक जानकारी की जरूरत है।

जवाबों:


1

कोई बैच फ़ाइल की आवश्यकता:

for /d %P in ("c:\CruiseControl\ProjectArtifacts\*") do @rd /s /q "%P\src" 2>nul

यदि आप एक बैच फ़ाइल चाहते हैं, तो सभी को बदल दें %P सेवा मेरे %%P


क्या होगा यदि {लॉग्स, एसआरसी, डेटा} केवल 3 निर्देशिकाएं नहीं हैं?
Kruug

@ क्रूग - प्रत्येक प्रोजेक्ट के तहत मनमाने ढंग से जटिल फ़ोल्डरों की संख्या हो सकती है, लेकिन ऊपर दिए गए कोड प्रत्येक प्रोजेक्ट से केवल .. \ src फोल्डर (और इसके तहत सभी फाइलें और फ़ोल्डर्स) को हटा देगा। कोड यह मानता है कि सभी परियोजनाएं निर्देशिका ट्री के समान स्तर पर हैं, जैसा कि ओपी द्वारा निहित था।
dbenham

मैं जिस तरह से चीजों पर काबू पा रहा था :) मदद के लिए धन्यवाद!
Richie086
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.