Est-ce que Windows a le ln -s ou équivalent?


38

J'ai besoin de lier un fichier à C:\Windows\System32\drivers\etc\hosts

Comment puis-je faire cela avec Windows? Existe-t-il un lien symbolique similaire ln -sou équivalent dans Windows?

Réponses:


38

Vous recherchez la commande "mklink".

Documentation et exemples dans Microsoft Docs ou ss64.com .

Exemple tiré du lien:

// 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
Veuillez noter que vous avez besoin des privilèges d'administrateur pour créer des liens symboliques.
Andres Riofrio

16

Il y a peut-être d'autres moyens, mais celui que je connais bien est 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

Il y a des jonctions mais je ne sais pas si cela fera exactement ce dont vous avez besoin.

edit - oops désolé, la jonction ne s'applique qu'aux répertoires et non aux fichiers


2

Comme @inf le dit, mklink est la solution pour Vista et les versions ultérieures .

Pour 2000 / XP, vous pouvez utiliser fsutil hardlink . Notez que, contrairement à mklink, les liaisons physiques ne fonctionnent pas sur tous les lecteurs.


1
Il est également intéressant de noter que certaines personnes peuvent ne pas être au courant, mais les liens durs deviennent le fichier . En d'autres termes, il est possible de supprimer l'original et le lien fonctionne toujours (c'est pourquoi il ne peut pas fonctionner sur plusieurs lecteurs).
Camilo Martin

Selon le lien que vous avez fourni, fsutil hardlink , fsutil hardlinkconcerne uniquement Vista et les versions ultérieures . Une version plus ancienne est-elle disponible pour Windows 2000 et XP?
Matty

En effet, il est disponible pour XP, comme décrit dans la documentation de Windows XP fsutil hardlink . Je ne peux pas attester de ses fonctionnalités dans Windows 2000, mais cela fonctionne dans Windows XP.
Matty

2

Link Shell Extension peut créer un lien symbolique (entre autres). Belle intégration du menu contextuel. Disponible pour les versions Windows les plus récentes et fréquemment mises à jour.


1

Powershell

Tant que Microsoft conseille d'utiliser comme interprète de commande depuis plus de 5 ans et cmd.exedevient une application traditionnelle, cette question manque de réponse dans Powershell:

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

Cela fonctionne à partir de Powershell v5.0


-2

ouvrez le Terminal / CMD sous android / sdk / tools, tapez

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

cela va être créé comme ..

lien symbolique créé pour emulator64-x86 << === >> emulator-x86

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.