A drive letter changed (and I need to keep that change). I had used Link Shell Extension to relocate many things before this happened, so I now have a lot of symlinks pointing to locations at the old drive letter.

Shortcuts have been fixed, and I was able to fix nearly all registry entries. However, it seems like I may need to tackle my symlinks one at a time. This is tedious.

Is there an efficient way I can change the drive letter in the path on all affected symbolic links?

I'm on Windows 7 Ultimate.

  • You could write a PowerShell script for it. If you Get-Item a symbolic link it's type is SymbolicLink and it has a Target. One downside is that mklink seems to be a builtin for cmd so you will have to call cmd or maybe a batch to run mklink. Get-ChildItem supports -Recurse. – Seth Sep 26 '18 at 6:05
  • I would prefer mklink because it can create relative links. Then you can add a second layer of indirection to forever avoid this problem in the future. – grawity Sep 26 '18 at 6:33

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Browse other questions tagged or ask your own question.