Remove (or Delete) a Directory.
Syntax RD pathname RD /S pathname RD /S /Q pathname Key /S : Delete all files and subfolders in addition to the folder itself. Use this to remove an entire folder tree. /Q : Quiet - do not display Y/N confirmation
Place any long pathnames in double quotes.
Without the /S option, RD will only delete an empty directory and
RD /Q will silently fail to delete any directories that are not empty.
If the pathname is a Junction Point, then RD without /S will remove the Junction point itself, not the Junction’s destination directory.
RD does not support wildcards but you can remove multiple directories in one command:
RD C:\docs\Jan "C:\My Documents\Mar"
In normal use RD will fail to return an ERRORLEVEL to the shell, irrespective if the command succeeds or fails the ERRORLEVEL will be left unchanged.
It will however set an Exit Code
Directory deleted successfully = 0
Invalid option = 1
Directory not found = 2
Access denied = 5
Directory in use = 32
Directory not empty = 145A workaround to detect a non zero Exit Code from RD is to use conditional execution to run a command if the RD fails, the second command can be anything, but typically will be an Echo, Goto or CALL statement:
RD NonExistentFolder || Echo This failed!
If you delete directories using PowerShell then a True/False return code ($?) will be set correctly.
RMDIR is a synonym for RD
RD is an internal command.
Examples
Remove 'C:\demo documents\work' and all files and sub folders:
RD /S "C:\demo documents\work"
Remove 'C:\source_files' but only if it is already empty:
RD "C:\source_files"
“Dying is the most embarrassing thing that can happen to you, because someones got to take care of all your details” - Andy Warhol
Related:
MD - Create Directory.
DEL - Delete selected files from an entire folder tree.
DELTREE - Delete a folder and all subfolders/files.
Delete only empty folders and log results.
FSUTIL reparsepoint delete - Delete an NTFS reparse point.
INUSE - updated file replacement utility (may not preserve file permissions)
Powershell: Remove-Item - Remove an item (rd/ri/rmdir)
Equivalent bash command (Linux): rmdir - Remove folder(s) rm -rf - Delete directory recursively.