O Windows tem ln -s ou equivalente?


38

Eu preciso vincular um arquivo ao C:\Windows\System32\drivers\etc\hosts

Como posso fazer isso com o Windows? Existe um link suave como ln -sou equivalente no Windows?

Respostas:


38

Você está procurando o comando "mklink".

Documentação e exemplos no Microsoft Docs ou ss64.com .

Exemplo retirado do 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

4
Observe que você precisa de privilégios de administrador para criar links simbólicos.
Andres Riofrio

16

Pode haver outras maneiras, mas a que eu conheço é o 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.

3

Existem junções, mas não sei se isso fará exatamente o que você precisa.

edit - opa, desculpe, a junção se aplica apenas a diretórios e não a arquivos


2

Como o @inf diz, o mklink é a solução para o Vista e versões posteriores.

Para 2000 / XP, você pode usar o hardlink fsutil . Observe que, ao contrário do mklink, o hardlink não funciona nas unidades.


1
Também digno de nota é que algumas pessoas podem não estar cientes, mas os hardlinks se tornam o arquivo . Em outras palavras, é possível excluir o original e o link ainda funciona (e é por isso que não pode funcionar entre unidades).
Camilo Martin

De acordo com o link que você forneceu, o fsutil hardlink , fsutil hardlinké apenas para o Vista e superior. Existe uma versão mais antiga disponível para Windows 2000 e XP?
matty

Na verdade, está disponível para XP, conforme descrito nos documentos de hardlink do Windows XP fsutil . Não posso testemunhar sua funcionalidade no Windows 2000, mas funciona no Windows XP.
matty

2

A Extensão do Shell de Link pode criar um link simbólico (entre outras coisas). Boa integração de menu de contexto. Disponível para as versões mais recentes do Windows e atualizadas com freqüência.


1

Powershell

Desde que a Microsoft aconselhe o uso do como intérprete de comando há mais de 5 anos e cmd.exeesteja se tornando um aplicativo herdado, essa pergunta não terá resposta no Powershell:

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

Funciona a partir do Powershell v5.0


-2

abra o Terminal / CMD sob android / sdk / tools, digite

Terminal ** ln -s emulator64-x86 emulator-x86 ** CMD mklink emulator64-x86 emulator-x86

isso será criado como ..

link simbólico criado para emulator64-x86 << === >> emulator-x86

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.