Cannot remove item. The directory is not empty
Solution 1:
You could try the following:
Remove-Item -Force -Recurse -Path "$directoryPath\*"
Note when using the -Recurse
parameter with -Include
in Remove-Item
, it can be unreliable. So it's best to recurse the files first with Get-ChildItem
and then pipe into Remove-Item
. This may also help if you deleting large folder structures.
Get-ChildItem $directoryPath -Recurse | Remove-Item -Force
Solution 2:
File is open in another program
I forgot that I had Visual Studio open with my project open and was getting this error.
Close any files associated with that directory, run PowerShell as admin, then run the command:
Remove-Item "C:\path\to\dir" -Recurse -Force
Pro Tip
You can also run this command to open file explorer:
ii "C:\path\to\dir"
If you right click and try to delete it, it might give you a more verbose error than command line.
Solution 3:
Note that
Remove-Item -Force -Recurse -Path "C:\MyFolder"
Produces this error, but
Remove-Item -Force -Recurse -Path "C:\MyFolder\*"
Does not.
So don't forget the magic sauce