Toon posts:

[DOS] verwijderen lege subdirectories /S

Pagina: 1
Acties:
  • 147 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
Ik probeer alle lege directories van mijn harddisk te verwijderen.

Het commando RMDIR *.* /S is heel gevaarlijk, want die verwijderd ook volle dirs :(

Is er een andere manier om dit automatisch te doen?

  • avon
  • Registratie: November 2002
  • Laatst online: 27-06-2025
RMDIR *. /S

*. is alleen directory (hehe, dit geheel op eigen risco natuurlijk want Dos is toch echt
al wel een hele tijd geleden).


Helaas dit gaat niet werken, de S is zo ie zo recursief tevens alle file's

[ Voor 30% gewijzigd door avon op 17-04-2004 18:33 ]

Gratis webwinkel beginnen? Met Onetoshop.com kunt u direct beginnen!


Verwijderd

ik weet het niet zeker, dus probeer het eerst uit op een testbak!

boot gewoon eens met een wat oudere versie van dos. daar werkt "rd" namelijk alleen voor lege dirs, en niet voor dirs met bestanden :)

Verwijderd

Topicstarter
Verwijderd schreef op 17 april 2004 @ 18:36:
boot gewoon eens met een wat oudere versie van dos. daar werkt "rd" namelijk alleen voor lege dirs, en niet voor dirs met bestanden :)
Gaat niet werken met NTFS.

Verwijderd

Ik gebruik het onderstaande tooltje ervoor:

http://members.home.nl/r.vdveen/DeleteFolder.zip

Gaat prima.

  • elevator
  • Registratie: December 2001
  • Niet online

elevator

Officieel moto fan :)

code:
1
for /f %i in ('dir /s/b/ad') do @echo %i


Je 'echo' door 'rd' vervangen en je zou er moeten zijn :)

Verwijderd

Verwijderd schreef op 17 april 2004 @ 18:36:
[...]

Gaat niet werken met NTFS.
ik schaam me diep :o

  • Rudoli
  • Registratie: Juni 1999
  • Laatst online: 28-04-2025
elevator schreef op 17 april 2004 @ 19:50:
code:
1
for /f %i in ('dir /s/b/ad') do @echo %i


Je 'echo' door 'rd' vervangen en je zou er moeten zijn :)
Ben hier voorzichtig mee, volgens mij geeft dit alle directories als output... en gooit dus alsnog alles weg...

  • elevator
  • Registratie: December 2001
  • Niet online

elevator

Officieel moto fan :)

'rd' verwijdert alleen lege directories - pas als je '/s' toevoegt, gaat 'rd' ook files wissen - zoals je overigens ook uit de help kan lezen:
/S Removes all directories and files in the specified directory
in addition to the directory itself. Used to remove a directory
tree.

  • Rudoli
  • Registratie: Juni 1999
  • Laatst online: 28-04-2025
Je hebt gelijk, ik zat een deltree ofzo te denken, foutje...

Ik was al aan 't werken aan een "if" statement dat alleen de lege dirs geeft :) maar da's idd niet nodig...

Verwijderd

Topicstarter
elevator schreef op 17 april 2004 @ 22:27:
'rd' verwijdert alleen lege directories - pas als je '/s' toevoegt, gaat 'rd' ook files wissen - zoals je overigens ook uit de help kan lezen:
klopt, daar kwam ik ook achter ;)

Jouw scriptje werkt perfect. Ik heb er al wat kleine variaties op gemaakt voor andere veel voorkomende taken. (alle files binnen een directory zippen)

Is jouw scriptje ook nog eenvoudig uit te breiden dat hij lege files of files kleiner dan 1kb weg gooit?

  • Rudoli
  • Registratie: Juni 1999
  • Laatst online: 28-04-2025
Komt m'n if statement toch nog van pas :)

code:
1
FOR /F "usebackq tokens=*" %I IN (`dir /B/S/A-D c:\temp`) DO @IF %~zI EQU 0 @ECHO "%I"


Nog wel eventjes c:\temp vervangen door het gewenste pad en ECHO vervangen door DEL en dan gooit ie alle lege bestanden in de opgegeven directory en alle subdirectories weg.
Pagina: 1