38

I need to link a file to C:\Windows\System32\drivers\etc\hosts

How can I do that with Windows ? Is there a soft link such as ln -s or equivalent in Windows ?

39

You are looking for the command "mklink".

Documentation and examples in Microsoft Docs or ss64.com.

Example taken from the link:

// To create a symbolic link named MyDocs from the root directory to the \Users\User1\Documents directory, type:
mklink /d \MyDocs \Users\User1\Documents
| improve this answer | |
  • 4
    Please note that you need Administrator privileges to create symbolic links. – Andres Riofrio Jul 26 '12 at 21:46
16

There may be other ways, but the one I'm familiar with is mklink:

C:\>mklink 
Creates a symbolic link.

MKLINK [[/D] | [/H] | [/J]] Link Target

        /D      Creates a directory symbolic link.  Default is a file
                symbolic link.
        /H      Creates a hard link instead of a symbolic link.
        /J      Creates a Directory Junction.
        Link    specifies the new symbolic link name.
        Target  specifies the path (relative or absolute) that the new link
                refers to.
| improve this answer | |
3

There are junctions but I don't know if this will do exactly what you need.

edit - oops sorry, junction only applies to directories not files

| improve this answer | |
2

As @inf says, mklink is the solution for Vista and above.

For 2000/XP, you can use fsutil hardlink. Note that, unlike mklink, hardlink doesn't work across drives.

| improve this answer | |
  • 1
    Also worthy of note is that some people may not be aware, but hardlinks become the file. In other words it's possible to delete the original and the link still works (and this is why it can't work across drives). – Camilo Martin Sep 9 '13 at 2:05
  • According to the link you provided, fsutil hardlink, fsutil hardlink is only for Vista and above. Is there an older version available for Windows 2000 and XP? – matty Jul 8 '15 at 5:34
  • Indeed it is available for XP, as described in the Windows XP fsutil hardlink docs. I can't testify to its functionality in Windows 2000, but it does work in Windows XP. – matty Jul 8 '15 at 7:53
2

Link Shell Extension can create symbolic link (among other things). Nice context menu integration. Available for the most recents windows versions and frenquently updated.

| improve this answer | |
1

Powershell

As long as Microsoft advices to use as a command interpreter since more than 5 years ago and cmd.exe is becoming a legacy application this question lacks an answer in Powershell:

New-Item -path ~\Desktop\hosts -itemType SymbolicLink -target c:\Windows\System32\Drivers\etc\hosts

This works as of Powershell v5.0

| improve this answer | |
-2

open the Terminal/CMD under the android/sdk/tools,type

Terminal** ln -s emulator64-x86 emulator-x86** CMDmklink emulator64-x86 emulator-x86

this will get created like..

symbolic link created for emulator64-x86 <<===>> emulator-x86

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.