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 folder and
RD /Q will silently fail to delete any folders 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 folder.
RD does not support wildcards but you can remove multiple folders 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 = 145
A 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, an Echo, Goto or CALL statement:
RD NonExistentFolder || Echo This failed!
If you delete folders using PowerShell then a True/False return code ($?) will be set correctly.
RMDIR is a synonym for RD
RD is an internal command.
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:
“Dying is the most embarrassing thing that can happen to you, because someones got to take care of all your details” - Andy Warhol
MD - Create folder(s)
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