मुझे किसी फ़ोल्डर और उसके बच्चों को दोबारा हटाने का एक तरीका चाहिए, क्या इसके लिए एक प्रीबिल्ट टूल है, या मुझे एक लिखने की ज़रूरत है?आरएम-आरएफ समकक्ष?
DEL/S निर्देशिका को हटा नहीं देता है।
deltree विंडोज 2000 + से
मुझे किसी फ़ोल्डर और उसके बच्चों को दोबारा हटाने का एक तरीका चाहिए, क्या इसके लिए एक प्रीबिल्ट टूल है, या मुझे एक लिखने की ज़रूरत है?आरएम-आरएफ समकक्ष?
DEL/S निर्देशिका को हटा नहीं देता है।
deltree विंडोज 2000 + से
RMDIR या आरडी क्लासिक कमांड प्रॉम्प्ट (cmd.exe):
rd /s /q "path"
क्या आप PowerShell उपयोग कर रहे हैं का उपयोग कर सकते Remove-Item
(जो del
, erase
, rd
, ri
, rm
और rmdir
पर एलियास है) और एक -Recurse
तर्क यह है कि -r
rd -r "path"
यह इंगित करने लायक है कि बड़ी संख्या में फाइलों के लिए, आरएमडीआईआर/एस/क्यू आमतौर पर एक्सप्लोरर में "चयन डीआईआर, शिफ्ट + डिलीट" ऑपरेशन के बराबर काफी तेज है। – Wedge
निर्देशिका नामों से मेल खाने के लिए झंडे का उपयोग करने के बारे में कैसे? अगर मैं foo \ के अंतर्गत सभी निर्देशिकाओं को छोड़ना चाहता हूं, तो 'rmdir/s/q foo \ * 'वाक्यविन्यास गलत के लिए एक त्रुटि देता है। –
यह आरएम-आरएफ की तरह फ़ाइलों को हटा नहीं देता है, और जब निर्देशिका मौजूद नहीं है, तो यह गैर-शून्य मान भी लौटाता है, इसलिए 'rd/s/q foo && echo "yay" निर्देशिका में विफल हो जाएगा " foo "मौजूद नहीं है। –
हटा दिया गया था rmdir/एस dirname
इस आदेश का प्रयास करें: यदि आप उपयोग कर रहे हैं
संयोजन w/rmdir/s/q संयोजन में मेरे लिए काम किया क्योंकि कुछ फाइलें लॉक थीं और आरएमडीआईआर उन पर असफल हो जाएगी। डेल/फ़ोल्डनेम ने लॉक की गई फाइलों को नियुक्त किया, जिसके बाद आरएमडीआईआर को रूट डीआईआर से छुटकारा पाने की इजाजत दी गई। अच्छा लगा। – bbqchickenrobot
को शॉर्ट की जा सकती हैं rmdir /S /Q %DIRNAME%
RMDIR [/S] [/Q] [drive:]path
RD [/S] [/Q] [drive:]path
/S
निर्देशिका खुद के अलावा निर्दिष्ट निर्देशिका में सभी निर्देशिकाओं और फ़ाइलों को निकालता है। एक निर्देशिका पेड़ को हटाने के लिए प्रयुक्त।
/Q
शांत मोड, /S
धन्यवाद। स्वीकृत उत्तर यह दुर्भाग्य से ऐसा नहीं करता है। – Thomas
के साथ एक निर्देशिका वृक्ष हटाने का आग्रह नहीं करते हैं तो ठीक है आप cygwin, जो rm
है और साथ ही ls
आदि स्थापित कर सकते हैं
नहीं है यदि आप विंडोज़ के पुराने संस्करण पर हैं तो भी deltree।
मैं वास्तव में खोजने आदेश के लिए इस साइट की तरह: SS64: Del - Delete Files
व्यवस्थापक:
takeown /r /f folder
cacls folder /c /G "ADMINNAME":F /T
rmdir /s folder
sys फ़ाइलों
सहित कुछ भी के लिए काम करता हैसंपादित करें: मैं वास्तव में सबसे अच्छा तरीका है जो भी फ़ाइल को हल करती है पाया पथ बहुत लंबी समस्या भी है:
mkdir \empty
robocopy /mir \empty folder
आप GnuWin32 इंस्टॉल कर सकते हैं और विंडोज़ पर मूल रूप से * nix कमांड का उपयोग कर सकते हैं।विंडोज़ की एक छोटी ताजा प्रतिलिपि पर कुछ और स्थापित करने से पहले मैं इसे स्थापित करता हूं। :)
यहाँ आप क्या करने की जरूरत है ...
निम्न पंक्ति के साथ एक बैच फ़ाइल बनाएँ
RMDIR /S %1
Remove.bat
के रूप में अपने बैच फ़ाइल सहेजें और C:\windows
निम्न रजिस्ट्री कुंजी बनाएँ
HKEY_CLASSES_ROOT\Directory\shell\Remove Directory (RMDIR)
लॉन्च regedit
और अद्यतन डिफ़ॉल्ट निम्नलिखित मूल्य के साथ मूल्य HKEY_CLASSES_ROOT\Directory\shell\Remove Directory (RMDIR)\default
"c:\windows\REMOVE.bat" "%1"
यह Thats! अब आप किसी भी निर्देशिका पर क्लिक करें और RMDIR समारोह
क्या मेरे लिए काम किया है का उपयोग कर सकते हैं:
बस पथ की लंबाई कम करके देखें। i.e :: उन सभी फ़ोल्डर्स का नाम बदलें जो ऐसी फ़ाइल को सबसे छोटे संभावित नामों तक ले जाते हैं। एक अक्षर नाम कहो। फ़ोल्डर पदानुक्रम में ऊपर नामकरण पर जाएं। इससे आप प्रभावी रूप से पथ की लंबाई को कम कर देते हैं। अब अंत में फ़ाइल को तुरंत हटाने का प्रयास करें।
पहले, आइए की समीक्षा क्या rm -rf
करता है:
C:\Users\ohnob\things>touch stuff.txt
C:\Users\ohnob\things>rm -rf stuff.txt
C:\Users\ohnob\things>mkdir stuff.txt
C:\Users\ohnob\things>rm -rf stuff.txt
C:\Users\ohnob\things>ls -l
total 0
C:\Users\ohnob\things>rm -rf stuff.txt
तीन परिदृश्य होंगे जहां rm -rf
आमतौर पर इस्तेमाल किया जाता है, जहां यह 0
लौटने की उम्मीद है रहे हैं।
मैं पूरी अनुमति चीज़ों को अनदेखा करने जा रहा हूं, लेकिन कोई भी अनुमतियों का उपयोग नहीं करता है या विंडोज़ में चीजों पर खुद को लिखने से इनकार करने का प्रयास करता है (ठीक है, यह एक मजाक है ...)।
पहले set ERRORLEVEL
to 0 और फिर यह केवल तभी हटाएं जब यह अस्तित्व में है, विभिन्न आदेशों का उपयोग करके यह एक निर्देशिका है या नहीं। IF EXIST
ERRORLEVEL
से 0 सेट नहीं करता है, यदि पथ मौजूद नहीं है, तो ERRORLEVEL
से 0 को पहले सेट करना उचित है ताकि सामान्य rm -rf
उपयोग की नकल करने के तरीके में सफलता का पता लगाना आवश्यक हो। RD
की देखभाल IF EXIST
के साथ आवश्यक है क्योंकि RD
, rm -f
के विपरीत, यदि कोई लक्ष्य मौजूद नहीं है तो कोई त्रुटि फेंक देगी।
निम्न स्क्रिप्ट स्निपेट मानता है कि DELPATH प्रीक्वॉट किया गया है। (यह सुरक्षित है जब आप SET DELPATH=%1
जैसे कुछ करते हैं। ECHO %1
को .cmd
में डालने का प्रयास करें और इसे रिक्त स्थान के साथ तर्क दें और देखें कि आपके लिए क्या होता है)। स्निपेट पूरा होने के बाद, आप IF ERRORLEVEL 1
के साथ विफलता की जांच कर सकते हैं।
: # Determine whether we need to invoke DEL or RD or do nothing.
SET DELPATH_DELMETHOD=RD
PUSHD %DELPATH% 2>NUL
IF ERRORLEVEL 1 (SET DELPATH_DELMETHOD=DEL) ELSE (POPD)
IF NOT EXIST %DELPATH% SET DELPATH_DELMETHOD=NOOP
: # Reset ERRORLEVEL so that the last command which
: # otherwise set it does not cause us to falsely detect
: # failure.
CMD /C EXIT 0
IF %DELPATH_DELMETHOD%==DEL DEL /Q %DELPATH%
IF %DELPATH_DELMETHOD%==RD RD /S /Q %DELPATH%
प्वाइंट यह है कि पर्यावरण बस पॉज़िक्स के अनुरूप होने पर सब कुछ आसान होता है। या यदि आप न्यूनतम एमएसवाईएस स्थापित करते हैं और बस इसका इस्तेमाल करते हैं।
डेल/एस/q पथ पर जाएं
कुछ विवरण/स्पष्टीकरण जोड़ने का प्रयास करें। –
directorytobedeleted और यह आदेश ट्रिगर।
rd /s /q "FOLDER_NAME"
/एस: निर्दिष्ट निर्देशिका और सभी उपनिर्देशिकाओं को किसी भी फाइल सहित हटा देता है। एक पेड़ को हटाने के लिए उपयोग करें।
/q: शांत मोड में rmdir चलाता है। पुष्टि के बिना निर्देशिका हटा देता है।
/? : कमांड प्रॉम्प्ट पर मदद प्रदर्शित करता है।
एक निर्देशिका (या नहीं, वह मौजूद है) को हटाने के लिए निम्नलिखित का उपयोग करें:
if exist myfolder (rmdir /s/q myfolder)
डेल/एस (क) सब पर काम नहीं है (यह कुछ संस्करणों में ही उपलब्ध है) या (ख) छोड़ करता है शीर्ष-स्तरीय निर्देशिका लेकिन इसके तहत सबकुछ हटाएं या (सी) सभी फ़ाइलों को हटाते समय सभी निर्देशिकाएं छोड़ दें? – wnoise
@Aaron, उत्तर सी, आपको निर्देशिकाओं और फ़ाइलों को हटाने के लिए rmdir/s का उपयोग करने की आवश्यकता है। – Wedge
क्या यह वास्तव में 'प्रारूप c:' नहीं है तो लिनक्स की स्थापना? मैं निश्चित रूप से मजाक कर रहा हूँ। –