विशिष्ट फ़ोल्डरों को हटाने के लिए बैच स्क्रिप्ट


4

मैं मूल फ़ोल्डर में एक स्क्रिप्ट चलाने में सक्षम होना चाहता हूं जिसमें अन्य फ़ोल्डर शामिल हैं, स्क्रिप्ट एक निश्चित नाम के सभी फ़ोल्डरों को हटा देगा।

उदाहरण के लिए सभी बिन फ़ोल्डरों को हटा दें और केवल उन्हें: \parent\a\bin, \parent\a\subfolder\bin, \parent\b\bin

मुझे यहां एक समान स्क्रिप्ट मिली, लेकिन यह काम नहीं करता है:

for /d /r %%i in (bin) do @rmdir /s %%i

हमें संभवतः binपहले फ़ोल्डर को खाली करने की आवश्यकता है और फिर इसे हटा दें, यह कैसे किया जा सकता है?

जवाबों:


4

स्क्रिप्ट एक निश्चित नाम के सभी फ़ोल्डरों को हटा देगी

आपको निर्देशिका को खाली करने की आवश्यकता नहीं है क्योंकि rdविकल्प /sआपके लिए ऐसा करेगा।

निम्न बैच फ़ाइल का उपयोग करें:

@echo off
setlocal enabledelayedexpansion
rem find directories called bin
for /f "usebackq tokens=*" %%i in (`dir /b /s /a:d bin`) do (
  rem delete the directories and any files or subdirectories
  rd /s /q "%%i"
  )
endlocal

आगे की पढाई


बहुत अच्छा, बस यह सुनिश्चित करने के लिए कि मुझे यह मिल गया है, क्या यह फ़ोल्डर की एक सूची से गुजरता है, प्रत्येक आइटम को अंतिम कीवर्ड (बिन) के साथ मिलान करता है?
shinzou

dirपाता नाम बिन के साथ सभी फ़ोल्डर और forउन के माध्यम से छोरों को हटाने के लिए एक के बाद एक।
DavidPostill
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.