create symlinks in windows

For an easy understanding of what Symbolic Links mean, let us begin by slicing the term into two portions.

  • Symbol – A symbol is something that represents something else
  • Link – A link is a connection between two things

In the world of computers, a symbol can be a file or folder. A symbolic link is therefore a file or folder that is connected with, and represents another file or folder. In other words, a symbolic link points to another file or folder. Think of a shortcut beyond the basic level.

A good use case for this is when you need to access the same data from multiple locations on your computer without having to make multiple copies of the data. This saves storage space.

For instance, you can move data from a location on your C: drive to another location on a secondary disk or drive letter, or even a cloud storage platform (e.g. OneDrive, Google Drive or Dropbox sync folder), and then create a symbolic link at the original location that points to the moved data in the new location. This way, you or any app that needs that data at the original location, will continue to have access to it as though nothing changed.

Windows supports two other types of links, i.e. hard links and junction links. However, we are focusing on symbolic links in this tutorial.

Symbolic link – points to files or folders on the same or different drive letters. If the target is deleted, then the link is broken and the file or folder is no longer accessible.

Hard link – points to files on the same local drive letter. Does not work with folders. If the target file is deleted, the data at the file link remains accessible. Think carbon copy.

Junction link – also known as directory hard link. Points to directories or folders on different local drive letters. Does not work with files. If the target folder is deleted, the data at the folder link remains accessible.

Let us now take a look at three different ways in which you can create symbolic links in Windows. For this, imagine that you have two disk drive letters on your computer – C: and D:

You have a folder named MyVideos that’s almost taking up all the space on your C: drive which could cause performance issues in Windows. You have enough space on your D: drive and you resolved to move the MyVideos folder to D: drive, but you still want to be able to work with your video files through the C: drive as usual.

1. Using mklink

The mklink command can be used to create a symbolic link via Windows Command Prompt. The basic syntax is as follows.

To create a file symbolic link:

mklink link target

To create a directory or folder symbolic link:

mklink /d link target

To create a file hard link:

mklink /h link target

To create a junction, i.e. directory or folder hard link:

mklink /j link target 

Based on the given scenario above, you would run the following command to create a folder symbolic link to MyVideos on D: drive which will be accessible from the desktop on the C: drive.

mklink /d C:\Users\OA\Desktop\MyVideos D:\MyVideo
mklink
Create symbolic using mklink

2. Using Link Shell Extension

Link Shell Extension (LSE) is a free graphical tool for creating links. Once installed, you will notice a new “Pick link source” option when you right-click a target file or folder. Click this option to let LSE know that this is the target for the link you are trying to create.

link shell extension tool - pick link source
Pick Link Source

Next, go to the location where you want the link to be created and then right-click again. Choose the “Drop as” > “Symbolic link” option to create the symlink at that location.

drop as and create symbolic link
Drop As -> Symbolic Link

3. Using Symbolic Link Creator (Symlinker)

Symbolic link creator is a free and open-source tool for creating links. Though this application is built on an older technology (.Net Framework 3.5 required), it provides a straightforward graphical interface for creating file and folder symbolic links.

symlinker tool
Symbolic link creator

Conclusion

We hope that you now have a better understanding of what symbolic links are, as well as why and how you would create one. Even if you do not make use of this feature now, it’s nice to know that it exists and you can start to think of different other ways to take advantage of it later.