I created a symlink using
mklink. Now I need to change it but I can't figure out how to delete it so I can recreate it correctly.
I created a symlink using
Be very careful.
If you have a symbolic link that is a directory (made with
mklink /d) then using
del will delete all of the files in the target directory (the directory that the link points to), rather than just the link.
rmdir on the other hand will only delete the directory link, not what the link points to.
144Having just accidentally done this (deleted the complete contents of the target folder), this an important tip. Aug 8, 2011 at 21:10
7This answer is not entirely accurate.
Deldeletes files, not folders. Therefore, you would not use
delto delete the link.– AMissicoMar 12, 2013 at 1:47
17But don't use
rmdirin PowerShell. Wrap it in
cmdfirst. See my answer below...– northbenMay 13, 2013 at 21:25
6How about if i delete it through windows explorer????– CheungAug 11, 2013 at 16:49
12I don't get at which moment the devs considered it logical to delete files behind a link when deleting the link. After the 5th or 6th beer? Or perhaps after the mushrooms... Jul 8, 2017 at 22:11
To remove directory symbolic links created with
mklink /d it is safe to delete the symbolic link in windows explorer.
37+1 for telling people it is save to delete symbolic link through Windows Explorer.– AMissicoMar 12, 2013 at 1:45
4It is correct. I do it all the time. Just tested it again right now. Sep 29, 2016 at 21:00
3This just worked for me as well. i deleted the link not the source folder that was linked to. perhaps that the catch.– R HughesFeb 24, 2017 at 15:59
4It is safe to just delete it with Rightclick -> Delete. This does NOT delete the linked folder.– HexoSep 29, 2017 at 13:24
2this works but I was trying to move a parent folder so beware that the symlink will still hold a lock from the recycle bin. Using
DELis useful to bypass the bin. Feb 12, 2021 at 1:26
For a symlink to a file, use
del. For a symlink to a directory made with
mklink /d, use
6Warning: "del" will delete the file and not just the link. Nov 12, 2015 at 0:39
9Warning from @Tristan is not correct, this answer is accurate. Tested on windows 7. Jun 23, 2016 at 3:07
1In Windows 7 SP1 (64-bit), a symbolic link that points to either a file (e.g. created using MKLINK) or to a directory (MKLINK /D) can be deleted in Windows Explorer, using the ordinary Windows GUI 'delete' option, without deleting the target. Even a JUNCTION (e.g. created using the MKLINK /J command), if deleted in Explorer, will not delete the target directory nor its contents. If not empty, the target directory cannot even be deleted using the command DEL junction at the command prompt. Tested today.– Ed999Jan 20, 2017 at 15:56
On Windows Server 2012, this removed the directory contents that my symlink was pointed to...– C BauerJun 18, 2018 at 14:12
You should warn people not to
rmdirlinks from Powershell!– NH.Oct 29, 2018 at 16:57
In Powershell, don't use
cmd /c rmdir .\Target instead. I tested this myself and confirmed it here: http://kristofmattei.be/2012/12/15/powershell-remove-item-and-symbolic-links/
That blog confuses the meaning of "Target", which is the actual directory the link points to, and which folks generally wish to avoid deleting whilst removing the link. Sep 22, 2015 at 16:59
rmdiris an internal command of cmd.exe, thus obviously to call it from other shells you'll need
rmdirin PowerShell is just an alias to
Remove-Item– phuclvFeb 7, 2019 at 0:17
To add to the confusion,
delis also an alias to
Remove-Itemin PowerShell. So, while
delin cmd recursively deletes files,
delin PowerShell only removes the link. Nov 28, 2020 at 20:29
There is another solution tested by me and safe to use. just add to the real folder _ (example: foo become foo_) then simply delete your symbolik link, then remove _ from your true folder.
3yeah, this is 100% safest solution after you know that powershell does not give a s**t about rmdir– test30Jul 3, 2014 at 14:54
This is a clever precaution. +1– HannaMar 4, 2015 at 17:11
Warning: I don't think this MIGHT not work on Win10 since it's fixing shortcuts upon renaming. (At least classic Shortcuts) Not tested though.– HexoSep 29, 2017 at 13:26
I did this just in case. After I renamed the target folder, the symbolink link failed when I tried to access it, so I could delete it without worrying.– AndrewApr 14, 2018 at 0:39
mklink cannot be used to delete symbolic links. To remove a symbolic link, simply delete them as if you’re removing a normal file. For example, to delete the foo symbolic link created above, enter the following command:
If the link is a hard link to a directory:
or else, IF the link points to a file (as opposed to a dir)
2Just make sure you don't delete it with
del /Sor Explorer.– Hello71Jul 24, 2010 at 0:12
1See eddyq's answer below because using del for a link made to a directory won't work and instead will attempt to delete teh contents of the folder.– jpiersonMay 7, 2012 at 13:48
2Hardlinks to directories don't exist. I think you meant to say symlink. Sep 8, 2015 at 18:20
I've installed this Link Shell Extension. With this, you have 2 methods.
Create it using the context menu as shown and deleting via file explorer.
Test with a folder like
C:\Windows\Logs as shown or similar.
I'm just creating a directory of all the possible locations of temp files to delete and I wanted a central folder where I could monitor the size of them via symbolic links.
Please note: The screen going white is just the UAC.
The safest way undocumented here AFAIK.
On the created symbolic link (in steps shown above), right-click on it this time and click properties then go to the Link Properties tab.
Note: This shell extension added this tab.
Before I go on, lots more info can be found here, also, on the homepage are the x64 and 32bit versions.
So, to continue, here you can add anything to the target field as long as it's different to the original target.
Here's an after with the target as
C:\Windows\Logs_, notice the extra
_at the end.
You can check this again by going over the same 1-3 steps above to ensure that has stuck, this time you will get an error message when you click on the Link Properties tab so the link is now broken.
It is now safe(r) to delete the symbolic link than method 1 IMHO.
But! Both methods work here so it's entirely up to the user's choice. I like the properties method which I happily stumbled upon, so you're 100% sure the link is broken by using step 4 above.
Here's a gif of me creating a symbolic link by right mouse button dragging a folder to another and choosing the option to create a symbolic link in the sub-menu.
To delete, just follow the 1-5 steps above of method 2 or follow method 1.
How to create and delete a symbolic link using the properties method
Please note: The screen going white is just the UAC.
In my case (Windows 10), after creating the symbolic link using
MKLINK /D "C:\Users\username\Dropbox\MyProject" "C:\SourceProject"
and deleting via delete using the file explorer or keyboard delete key also deletes the original directory.
What you should do is to remove the link via command prompt.
C:\Users\username\Dropbox>rd /s MyProject
For details about the rd command: https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/rd
The simplest way is to move the folder (at which the symbolic link is pointing) to another place (to parent folder) and then delete the symbolic link. No files will be harmed!
Create Windows 10 directory symbolic link:
MKLINK /D "C:\Users\andronoid\Program Files" C:\Users\andronoid\AppData\Local
Delete Windows 10 directory symbolic link:
RMDIRsolution from an elevated command prompt didn't work for me: Access is denied.
- ddelrio1986's Windows Explorer solution did work (the link target was untouched)
There is one odd case not handled by any of the excellent answers here. That is when someone creates a file symbolic link to a folder (directory). This typically happens when someone has made a little boo-boo and forgot to include the "/D" option with
Not that I have ever done that. No, never. ;)
In this rare case, using the
del command will successfully remove the symlink. And more sleep will help prevent this rare breed of symlink in the first place.
superuser.com/a/178014/348859 Mar 1, 2021 at 19:43
@EngineerToast I'm referring to a file symlink to a directory. For example, created accidentally with:
mklink c:\windowsMar 1, 2021 at 21:06
I've deleted the symbolic link folder on my server.
1)I've deleted the sub files and folders in the symbolic link.
Get-ChildItem D:\test\link\ -Recurse | Remove-Item -Force -Recurse*
2)I've deleted the target folders.(this command similuare with chttps://superuser.com/a/684697/1749990).
Get-ChildItem "D:\test\link" | Get-Item | Select-Object -ExpandProperty Target | Remove-Item -Force -Recurse
3)Finally, I've deleted the link folders successfully.
cmd /c rmdir (Get-ChildItem -Path "D:\test\link" | Select-Object -ExpandProperty FullName)