Como eu crio um link simbólico no Windows?

109

O Windows Vista adicionou a capacidade de criar links simbólicos para arquivos e diretórios. Como faço para criar um link simbólico e quais são as versões atuais de consumidor e servidor do Windows que o suportam?

    
por cowgod 11.05.2009 / 18:06

8 respostas

106

Você pode criar um link simbólico com o utilitário de linha de comando mklink .

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.

Links simbólicos via mklink estão disponíveis desde o Windows Vista e Windows Server 2008. No Windows XP e no Windows Server 2003 você pode usar

fsutil hardlink create <destination filename> <source filename>

De acordo com msdn.microsoft , Links simbólicos não são suportados em FAT16 / 32 e exFAT. Parece que o Windows apenas os suporta de ou para partições NTFS. Futuros sistemas operacionais Windows provavelmente continuarão com o suporte ao mklink.

Você pode ler mais informações sobre esse novo recurso em Microsoft TechNet , Junfeng Zhang's blog ou howtogeek.com .

    
por 11.05.2009 / 18:20
30

No Windows XP, você pode usar fsutil (embutido no sistema operacional) para criar um link físico

 fsutil hardlink create c:\foo.txt c:\bar.txt

Tenha em mente que a fsutil só funcionará se ambas estiverem na mesma unidade

    
por 11.05.2009 / 23:48
10

Uma pequena coisa, se você estiver usando o Powershell, o mklink não funciona diretamente, execute-o assim:

PS C:\d\eclipseInstalls> cmd /k mklink /D antRunner 3.4.2
symbolic link created for antRunner <<===>> 3.4.2
    
por 28.06.2009 / 16:19
7

Use mklink ou junção de Sysinternals (Microsoft). Eu acredito mklink funcionará no Windows 2000 e acima, mas não consigo encontrar nenhuma documentação sobre isso. junção é para o Windows 2000 e superior.

    
por 11.05.2009 / 18:10
4

Não foi possível ver isso em nenhuma das respostas, mas linkd.exe (no Windows 2003 Resource Kit aqui ) permite que você crie junções, que funcionam como um link físico / flexível no Linux. As junções estão disponíveis no Windows 2000 e posteriores, portanto, basta copiar o linkd.exe para o sistema de destino e ele deverá funcionar.

    
por 04.06.2009 / 22:36
3

Se você ainda estiver no Windows antigo, como XP, 2000, 2003, etc., tente Link NTFS .

Eu uso muito isso. Você obtém uma opção de menu de clique com o botão direito do mouse para criar um ponto de junção. Coisas excelentes.

    
por 11.05.2009 / 19:35
2

Veja a entrada TechNet . Eu acredito que é um recurso Vista / Server 2008 e superior.

    
por 11.05.2009 / 18:08
1

Para garantir que seus links funcionem, convém verificar a configuração do seu servidor. Links podem ser feitos, mas, a menos que você use a configuração de link simbólico no comando a seguir, seus links podem não funcionar.

fsutil behavior set SymlinkEvaluation L2L:1 R2R:1 L2R:1 R2L:1

Veja também o link . Por padrão, apenas as opções locais são ativadas.

    
por 05.01.2013 / 22:07