Dizini tekrar tekrar pencerelerde komut satırından silmek nasıl?


Yanıtlar:


342

deltreeDOS'umu hatırlarsam .


Görünüşe göre güncellendi ... istediğin bu:

RMDIR /S

Bu C:\test, istemleri içeren dizini kaldırır :

rmdir c:\test /s

Bu aynı, istemleri olmadan yapar:

rmdir c:\test /s /q

Sorunuzun sudo kısmına gelince, daha fazla ayrıcalık istiyorsanız, önce aşağıdaki runaskomutu kullanarak yeni bir kabuk açabilirsiniz :

runas /user:Administrator cmd
rmdir c:\test /s /q

1
@ Farboy, özür dilerim, hatıralarım çok geride kaldı. Windows XP ve daha yeni bir sürümü için cevabı güncelledim.
Colin Pickard

8
Evet deltree, eski bir DOS komutudur. XP'de kaldırıldı ve yerini rmdir /s
heavyd

3
/ S bayrağı ne anlama geliyor?
Mike R

Bazı sebeplerden dolayı, eğer bunu Powershell'de yaparsanız bir sorun var. Bu yüzden sadece Windows Komut Satırı kullanın.
Devid

3
@MikeR, "alt dizinler" veya benzeri bir şey için durabilir. findstraynı parametreye sahip, bu durumdan daha anlamlı geliyor, bu yüzden belki de tutarlılık için aynılar.
Sam,

57

Komut isteminden, uzun ve karmaşık bir klasör yapısını silmek istiyorsanız, RmDir'in dokunmayacağı ve hatta gezginin bile görüntüleyemeyeceği robokopinin yapıyı kaldırmada çok etkili olabileceğini gördüm. Aşağıdaki örnekte, klasör yöneticisi içinde çok büyük bir yapı var, yapı o kadar derin ki hiçbir şey onu kaldıramaz. (Garip bir şekilde!) "New folder" adında yeni bir boş klasör yaratıyoruz. Daha sonra robocopy komutunu kullanıyoruz, kaynak klasöre "new folder" ve hedef klasöre "D: \ Administrator" olduğunu ve / MIR parametresi ile kaynak klasörde olmayan herhangi bir şeyi temizleyeceğini söylüyoruz.

robocopy "D:\new folder" D:\Administrator /MIR

Bu durumda, klasör yolları o kadar uzundu ki, Screen Buffer komut istem penceresine bile sığmayacaktı, ancak Robocopy yapıyı geçecek ve "ekstra" dosya ve klasörleri (yani her şey olan yeni boş klasörde olmayan herhangi bir şeyi) kaldıracak ).


11
Yolunuz 250 tuhaf karakter uzunluğunda olduğunda işe yarayacak tek çözüm bu.
Sakin Fırtına

10

Windows Vista + 'daysanız, PowerShell'de aşağıdakileri yapabilirsiniz:

rm C:\path\to\delete -r -f[orce]

6
Windows 10 -fbelirsiz olduğunu söylüyor . Ama koşabilirsinizrm -r -force <path>
BrunoLM

6

Benim için ne işe yarıyor

del /s dir

/qOnaylamayı devre dışı bırakmak için ekleyebilirsiniz . Hiç rmdirçalışmayı başaramadım (XP'de)


6
Muhtemelen XP kullanmayı bırakmalısınız, artık desteklenmiyor ...
Eric Wilson

3
Benim için, bu tüm dosyaları yinelemeli olarak kaldırıyor, ancak dizinleri kendileri silmiyor - diraynı zamanda kaldırılmıyor.
sergiol

2

Gerçekten çok uzun bir yolunuz varsa, (java program hatası nedeniyle yaptığım gibi), robokopi bile yapamaz. Yoluma yaklaşık 30 saniye boyunca indi ve sonra asıldı.

Benim çözümüm: Eğer tüm problem yolunu bir klasörden diğerine taşıyabilirseniz, tekrarlı olarak ve tekrar tekrar bazı dizin merdivenlerini üstten kesebilirsiniz.

Bu Batch leer ve leer2 dizileri arasında pingpong oynar ve her seferinde 8 kütüphaneyi keser. Yolunuz dosya içeriyorsa, silmek için başka komutlar eklemeniz gerekir.

recurdel.cmd
:loop
move c:\leer\libraries\libraries\libraries\libraries\libraries\libraries\libraries\libraries c:\leer2
rd /S /Q c:\leer\libraries
move c:\leer2\libraries\libraries\libraries\libraries\libraries\libraries\libraries\libraries c:\leer
rd /S /Q c:\leer2\libraries
GOTO loop

2

CMD'den RD / s C: \ path \ to \ delete komutunu çalıştırın.

/ s, tüm alt dizinlerin de silinmesini sağlar.

Referans Run yardım RD komut satırından


2
Cevabınız için teşekkürler, ama bu bilgi zaten kabul edilmiş bir cevaptı. ( rdve rmdiraynıdır.) Belki de orada bir yorum olarak uyacaktır.
Ben N

0

Bu, "klasörümü" sormadan silecektir:

rd /s /q "C:\Users\gourav.g\AppData\Roaming\my folder"
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.