risposta-alla-domanda-sullo-sviluppo-web-bd.com

Come faccio a creare un collegamento simbolico in Windows?

Windows Vista ha aggiunto la possibilità di creare collegamenti simbolici a file e directory. Come faccio a creare un collegamento simbolico e quali sono le attuali versioni consumer e server di Windows che lo supportano?

113
cowgod

È possibile creare un collegamento simbolico con l'utilità della riga di 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.

I collegamenti simbolici tramite mklink sono disponibili da Windows Vista e Windows Server 2008. Su Windows XP e Windows Server 2003 è possibile utilizzare

fsutil hardlink create <destination filename> <source filename>

Secondo msdn.Microsoft , i collegamenti simbolici NON sono supportati su FAT16/32 ed exFAT. Sembra che Windows li supporti solo da o verso le partizioni NTFS. È probabile che i futuri sistemi operativi Windows continuino a supportare mklink.

Puoi leggere ulteriori informazioni su questa nuova funzionalità su Microsoft TechNet , blog di Junfeng Zhang o howtogeek.com .

110
cowgod

Su Windows XP puoi usare fsutil (integrato nel sistema operativo) per creare un hardlink

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

Tieni presente che fsutil funzionerà solo se entrambi sono sulla stessa unità

30
saschabeaumont

Una piccola cosa, se stai usando Powershell, mklink non funziona direttamente, eseguilo in questo modo:

PS C:\d\eclipseInstalls> cmd /k mklink /D antRunner 3.4.2
symbolic link created for antRunner <<===>> 3.4.2
10
francisu

Utilizzare mklink o giunzione da Sysinternals (Microsoft). Io credo mklink funzionerà in Windows 2000 e versioni successive, ma non riesco a trovare alcuna documentazione a riguardo. junction è per Windows 2000 e versioni successive.

7
user2287

Non l'ho visto in nessuna delle risposte, ma linkd.exe (nel Resource kit di Windows 2003 qui ) ti permette di creare giunzioni, che praticamente funzionano come un collegamento soft/hard in Linux . Le giunzioni sono disponibili da Windows 2000 in poi, quindi basta copiare linkd.exe sul sistema di destinazione e dovrebbe funzionare.

4
romandas

Se sei ancora su Windows precedente, come XP, 2000, 2003, ecc., Prova Link NTFS.

Lo uso molto. È possibile ottenere un'opzione del menu di scelta rapida del collegamento Shell per creare un punto di giunzione. Roba eccellente.

3
Stewart Robinson

Vedi TechNet voce. Credo che sia una Vista/Server 2008 e funzioni avanzate.

2
user1797

Per assicurarti che i tuoi collegamenti funzionino, potresti voler controllare la configurazione del tuo server. I collegamenti possono essere creati ma, a meno che non si usi l'impostazione di valutazione simbolica nel seguente comando, i collegamenti potrebbero non funzionare.

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

Vedi anche http://technet.Microsoft.com/en-us/library/cc754077%28v=ws.10%29.aspx . Per impostazione predefinita sono attivate solo le opzioni locali.

1
user906489