Come creare un collegamento simbolico su Windows 10?


102

Stavo leggendo http://www.dropboxwiki.com/tips-and-tricks/sync-game-saves-across-multiple-computers e so che junction / mklink ha funzionato anche in Windows 7, ma sembra che il comando junction sia stato ritirato in Windows 10.

Qual è il modo corretto di creare collegamenti simbolici in Windows 10?


2
È possibile scaricare il junction da Windows SysInternals (che fa parte di Microsoft).
DavidPostill

Ha funzionato, grazie mille! Se rispondi, posso accettarlo come risposta corretta.
rosso

Grande. Lo scriverò come risposta.
DavidPostill

9
Cosa c'è che non va mklink?
Daniel B,

Risposte:


122

Sembra che il comando junction sia stato ritirato in Windows 10.

È possibile scaricare il junction da Windows SysInternals (che fa parte di Microsoft):

Junction non solo consente di creare giunzioni NTFS, ma consente di vedere se i file o le directory sono effettivamente punti di analisi. I punti di analisi sono il meccanismo su cui si basano le giunzioni NTFS e vengono utilizzati dal servizio di archiviazione remota (RSS) di Windows, nonché dai punti di montaggio del volume.

Leggere questo articolo di Microsoft KB per suggerimenti sull'utilizzo delle giunzioni.

Nota che Windows non supporta le giunzioni con le directory su condivisioni remote.


Quindi, come posso creare giunzioni o collegamenti simbolici di directory in Windows 10?

Scarica junctioncome indicato sopra.

Ora puoi usare i seguenti comandi.

Crea un incrocio:

junction "C:\Documents and Settings\UserName\My Documents\My Dropbox\My Games" "C:\Documents and Settings\UserName\My Documents\My Games"

Creare un collegamento simbolico alla directory:

mklink /D "C:\Documents and Settings\UserName\My Documents\My Dropbox\My Games" "C:\Documents and Settings\UserName\My Documents\My Games"

È possibile utilizzare mklink /jo junctionin Windows 10 per creare giunzioni.

È possibile utilizzare mklink /din Windows 10 per creare collegamenti simbolici di directory.

Appunti:

  • junctionpuò anche elencare le giunzioni e determinare se un file è una giunzione diversamente mklink.

  • mklinkè un comando interno disponibile solo all'interno di una cmdshell.

  • Per impostazione predefinita, sono necessari i privilegi di amministratore per creare collegamenti simbolici.

    Può anche essere concesso ad altri utenti. L'impostazione di sicurezza "Crea collegamenti simbolici" può essere concessa a:

    Configuration\Windows Settings\Security Settings\Local Policies\User Rights Assignment\
    

Esempi

Utilizzo di mklink per creare un collegamento simbolico alla directory:

F:\test>mklink /d test-dir-sym-link test
symbolic link created for test-dir-sym-link <<===>> test

Utilizzo di mklink per creare un incrocio:

F:\test>mklink /j test-junction test
Junction created for test-junction <<===>> test

Utilizzo del junction per creare un junction:

F:\test>C:\apps\NirSoft\SysinternalsSuite\junction.exe test-junction test

Junction v1.06 - Windows junction creator and reparse point viewer
Copyright (C) 2000-2010 Mark Russinovich
Sysinternals - www.sysinternals.com

Created: F:\test\test-junction
Targetted at: F:\test\test

Ulteriori letture


È diverso da mklink /j?
Jonno

1
@Jonno Per quanto ne so è lo stesso quando si creano giunzioni. junctionelencherà anche gli incroci a differenza dimklink
DavidPostill

2
Per quanto ne so, non è possibile utilizzare mklinkall'interno di PowerShell , quindi è necessario utilizzare cmd.exe. Inoltre, devi eseguirlo come amministratore. Ma non crederci sulla parola. Sto usando un computer Windows da solo circa 40 ore.
Bruno Bronosky,

@BrunoBronosky Correct. Questo perché mklinkè un comando interno disponibile solo all'interno di una cmdshell. Nota alcuni cmdcomandi interni sono stati implementati PowerShell, ad esempio dir.
DavidPostill

2
@DavidPostill Un miglioramento, ma ancora molta attenzione su junctioncui è necessario un download separato. mklinksembrerebbe funzionare meglio come focus principale, con una junctioncornice come opzione aggiuntiva ritirata alla fine.
WBT,

43

Apri una sessione di PowerShell come amministratore elevato e digita:

New-Item -ItemType SymbolicLink -Path E:\Data\MyGames -Target "C:\users\UserName\MyGames"

o usando una sintassi meno dettagliata:

ni E:\Data\MyGames -i SymbolicLink -ta "C:\users\UserName\MyGames" 

Sicuramente nel 2016 e con Windows 10 non vorrai giocherellare con comandi cmd o download esterni.

Windows 10 viene fornito con PowerShell 5 che ha il supporto integrato per la creazione di collegamenti simbolici.


6
Sicuramente nel 2016, non avrei dovuto saltare attraverso i cerchi per creare collegamenti simbolici! Ancora una delle finestre più grandi fallisce.
David Arno,

11
Stai scherzando vero? Preferirei fare "test mklink / d test-dir-sym-link" piuttosto che "New-Item -ItemType SymbolicLink -Path E: \ Data \ MyGames -Target" C: \ users \ UserName \ MyGames ". -verbose La sintassi di PowerShell non è davvero di mio gradimento ...
Jaime de los Hoyos M.

8
@JaimedelosHoyosM - usando una sintassi PowerShell più corta che puoi usareni test-dir-sym-link -i SymbolicLink -ta test
Peter Hahndorf,

Esiste un modo per creare un SymbolicLink da PowerShell in questo modo senza privilegi di amministratore?
cjsimon,

2
@scape - puoi usare le prime lettere del nome di un parametro se identificano in modo univoco il parametro, ad esempio -isono sufficienti -ItemTypema -tnon sono sufficienti perché ci sono più di un parametro che inizia con t, quindi dobbiamo usare-ta
Peter Hahndorf

14

Se si desidera uno strumento GUI per creare / modificare i collegamenti simbolici, utilizzare http://schinagl.priv.at/nt/hardlinkshellext/linkshellextension.html

Link Shell Extension (LSE) prevede la creazione di Hardlink, giunzioni, mountpoint di volume e collegamenti simbolici di Windows 7/8 (qui di seguito denominati collettivamente collegamenti) un processo di clonazione di cartelle che utilizza Hardlink o collegamenti simbolici e un processo di copia che si occupa di Giunzioni, collegamenti simbolici e collegamenti fissi. LSE, come suggerisce il nome, è implementato come estensione Shell e vi si accede da Esplora risorse o da gestori di file / cartelle simili. L'estensione consente all'utente di selezionare uno o più file o cartelle, quindi utilizzando il mouse, completare la creazione dei collegamenti richiesti - Collegamenti fissi, giunzioni o collegamenti simbolici o nel caso di cartelle per creare cloni costituiti da collegamenti fissi o simbolici. LSE è supportato su tutte le versioni di Windows che supportano NTFS versione 5.0 o successive, inclusi Windows XP64 e Windows 7/8/10. hardlinks,

inserisci qui la descrizione dell'immagine


3
Si prega di leggere Come posso raccomandare il software per alcuni suggerimenti su come dovresti raccomandare il software. È necessario fornire almeno un collegamento, alcune informazioni aggiuntive sul software stesso e come può essere utilizzato per risolvere il problema nella domanda.
DavidPostill

1
È uno strumento piacevole, ma alcune ulteriori informazioni nella risposta sarebbero carine.
DavidPostill

1

Non è necessario installare nulla!

Esiste un file semplice e open-source symlink_creator.bat e puoi semplicemente trascinare e rilasciare il file / cartella desiderato su quel file.


Per curiosi downvoter: è open-source, quindi, basta fare clic destro sul file e vedere il contenuto da soli, diverse righe di codici lì.


6
Dovresti aggiungere nella tua risposta come funziona esattamente questo file batch e qual è la tua associazione con esso. I file batch possono essere molto distruttivi e l'esecuzione di file casuali da Internet va contro il buon senso.
MoonRunestar

per di più è interessante che tu non abbia commentato queste parole alla risposta di cui sopra, che si collega a un programma sconosciuto e il link che ho usato, link a codice open-source.
T.Todua,

1
La risposta sopra ha già avuto un commento moderatore su di essa. Ero principalmente preoccupato per la tua risposta perché quel sito web che hai collegato sembra in qualche modo impreciso e il formato della tua risposta ha innescato alcune bandiere rosse per me. Sono solo paranoico, davvero.
MoonRunestar

sfortunatamente, termina con un errore "la sintassi non è corretta"
tutejszy il
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.