Wie erstelle ich einen symbolischen Link unter Windows 10?

102

Ich habe gelesen, dass http://www.dropboxwiki.com/tips-and-tricks/sync-game-saves-across-multiple-computers und ich weiß, dass junction / mklink auch unter Windows 7 funktioniert hat, aber es scheint, als wäre der Junction-Befehl gewesen in Windows 10 zurückgezogen.

Was ist der richtige Weg, um Symlinks in Windows 10 zu erstellen?

rot
quelle
2
Sie können die Junction von Windows SysInternals (einem Teil von Microsoft) herunterladen .
DavidPostill
Das hat funktioniert, vielen Dank! Wenn Sie antworten, kann ich dies als die richtige Antwort akzeptieren.
Rot
Toll. Ich werde es als Antwort aufschreiben.
DavidPostill
9
Was ist los mit mklink?
Daniel B

Antworten:

121

Es scheint, dass der Junction-Befehl in Windows 10 eingestellt wurde.

Sie können Junction von Windows SysInternals (das Teil von Microsoft ist) herunterladen :

Mit Junction können Sie nicht nur NTFS-Junctions erstellen, sondern auch feststellen, ob es sich bei Dateien oder Verzeichnissen tatsächlich um Analysepunkte handelt. Analysepunkte sind der Mechanismus, auf dem NTFS-Junctions basieren, und werden vom Windows-Remotespeicherdienst (RSS) sowie von Volume-Bereitstellungspunkten verwendet.

In diesem Microsoft KB-Artikel finden Sie Tipps zur Verwendung von Junctions.

Beachten Sie, dass Windows keine Verbindungen zu Verzeichnissen auf Remotefreigaben unterstützt.


Wie erstelle ich in Windows 10 Junctions oder symbolische Verzeichnisverknüpfungen?

Laden Sie es junctionwie oben beschrieben herunter .

Jetzt können Sie die folgenden Befehle verwenden.

Erstellen Sie eine Junction:

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

Erstellen Sie einen symbolischen Verzeichnislink:

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

Sie können Junctions mit Windows 10 mklink /joder junctionmit Windows 10 erstellen.

mklink /dIn Windows 10 können Sie Verzeichnissymbolverknüpfungen erstellen.

Anmerkungen:

  • junctionSie können auch Junctions auflisten und feststellen, ob es sich bei einer Datei um eine andere Junction handelt mklink.

  • mklinkist ein interner Befehl, der nur in einer cmdShell verfügbar ist .

  • Standardmäßig sind Administratorrechte erforderlich, um symbolische Links zu erstellen.

    Es kann auch anderen Benutzern gewährt werden. Die Sicherheitseinstellung "Symbolische Links erstellen" kann erteilt werden bei:

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

Beispiele

Verwenden von mklink zum Erstellen einer symbolischen Verzeichnisverknüpfung:

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

Verwenden von mklink zum Erstellen einer Junction:

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

Junction verwenden, um eine Junction zu erstellen:

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

Weitere Lektüre

DavidPostill
quelle
Ist das anders als mklink /j?
Jonno
1
@Jonno Soweit ich weiß, ist es beim Erstellen von Junctions dasselbe. junctionwird auch Kreuzungen anders als mklink
auflisten
2
Soweit ich das beurteilen kann, kann man nicht verwenden , mklinkinnerhalb Powershell , so müssen Sie verwenden cmd.exe. Außerdem müssen Sie es als Administrator ausführen. Aber nimm mein Wort nicht dafür. Ich benutze einen Windows-Computer erst seit ungefähr 40 Stunden.
Bruno Bronosky
@BrunoBronosky Richtig. Dies liegt daran, dass mklinkein interner Befehl nur in einer cmdShell verfügbar ist . Beachten Sie einige cmdinterne Befehle sind implementiert in PowerShell, zum Beispiel dir.
DavidPostill
2
@DavidPostill Eine Verbesserung, die jedoch noch viel Aufmerksamkeit junctionerfordert und einen separaten Download erfordert. mklinkscheint besser zu funktionieren als das Hauptaugenmerk, mit junctionals zusätzliche Option im Ruhestand am Ende gerahmt.
WBT
41

Öffnen Sie eine PowerShell-Sitzung als Administrator mit erhöhten Rechten und geben Sie Folgendes ein:

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

oder mit weniger ausführlicher Syntax:

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

Sicherlich möchten Sie 2016 und mit Windows 10 nicht mit Cmd-Befehlen oder externen Downloads herumspielen.

Windows 10 wird mit PowerShell 5 ausgeliefert, das die Erstellung symbolischer Links unterstützt.

Peter Hahndorf
quelle
6
Sicherlich sollte ich 2016 nicht durch die Reifen springen müssen, um Symlinks zu erstellen! Noch immer fällt eines der größten Fenster aus.
David Arno
11
Sie scherzen, oder? Ich würde viel lieber "mklink / d test-dir-sym-link test" als "New-Item -ItemType SymbolicLink -Path E: \ Data \ MyGames -Ziel" C: \ users \ UserName \ MyGames "ausführen -verbose PowerShell-Syntax ist nicht wirklich nach meinem Geschmack ...
Jaime de los Hoyos M.
8
@JaimedelosHoyosM - mit einer kürzeren PowerShell-Syntax, die Sie verwenden könnenni test-dir-sym-link -i SymbolicLink -ta test
Peter Hahndorf
Gibt es eine Möglichkeit, auf diese Weise einen SymbolicLink aus der PowerShell zu erstellen, ohne über Administratorrechte zu verfügen?
cjsimon
2
@scape - können Sie die ersten Buchstaben eines Parameternamen verwenden , wenn sie sie eindeutig die Paramter identifizieren, zum Beispiel -igenug für , -ItemTypeaber -tnicht genug , denn es gibt mehr als einen Parameter , die mit beginnen t, so müssen wir nutzen-ta
Peter Hahndorf
11

Wenn Sie ein GUI-Tool zum Erstellen / Bearbeiten von Symlinks benötigen, verwenden Sie http://schinagl.priv.at/nt/hardlinkshellext/linkshellextension.html

Die Link Shell Extension (LSE) ermöglicht das Erstellen von Hardlinks, Junctions, Volume Mountpoints und Windows7 / 8-Symbollinks (im Folgenden als Links bezeichnet). Hierbei handelt es sich um einen Ordner-Klonprozess, der Hardlinks oder Symbolische Links verwendet, und einen Kopierprozess, der sich darum kümmert Junctions, symbolische Links und Hardlinks. LSE wird, wie der Name schon sagt, als Shell-Erweiterung implementiert und über Windows Explorer oder ähnliche Datei- / Ordner-Manager aufgerufen. Die Erweiterung ermöglicht es dem Benutzer, eine oder mehrere Dateien oder Ordner auszuwählen und dann mit der Maus die erforderlichen Verknüpfungen - Hardlinks, Junctions oder symbolische Verknüpfungen - zu erstellen oder bei Ordnern Klone zu erstellen, die aus Hard- oder symbolischen Verknüpfungen bestehen. LSE wird von allen Windows-Versionen unterstützt, die NTFS Version 5.0 oder höher unterstützen, einschließlich Windows XP64 und Windows7 / 8/10. Hardlinks,

Bildbeschreibung hier eingeben

odvpbre
quelle
3
Bitte lesen Sie Wie empfehle ich Software für einige Tipps, wie Sie Software empfehlen sollten. Sie sollten mindestens einen Link, einige zusätzliche Informationen zur Software selbst und Informationen zur Behebung des Problems in der Frage bereitstellen.
DavidPostill
1
Es ist ein nettes Tool, aber einige weitere Informationen in der Antwort wären nett.
DavidPostill
1

Es muss nichts installiert werden!

Es gibt eine einfache und quelloffene symlink_creator.bat Datei, und Sie können die gewünschte Datei / den gewünschten Ordner einfach per Drag & Drop auf diese Datei ziehen.


Neugierige Downvoter: Es ist Open Source, also klicken Sie einfach mit der rechten Maustaste auf die Datei und sehen Sie selbst, was sie enthält, mehrere Codezeilen .

T.Todua
quelle
6
Sie sollten in Ihrer Antwort hinzufügen, wie genau diese Batch-Datei funktioniert und wie Sie mit ihr verbunden sind. Batch-Dateien können sehr zerstörerisch sein und das Ausführen von zufälligen Dateien aus dem Internet verstößt gegen den gesunden Menschenverstand.
MoonRunestar
Außerdem ist es interessant, dass Sie diese Wörter nicht zu der obigen Antwort kommentiert haben, die auf ein unbekanntes Programm verweist, und der Link, den ich verwendet habe, verweist auf Open-Source-Code.
T.Todua
1
Die obige Antwort wurde bereits von einem Moderator kommentiert. Ich habe mich hauptsächlich um Ihre Antwort gekümmert, da die von Ihnen verlinkte Website etwas lückenhaft aussieht und das Format Ihrer Antwort für mich einige rote Fahnen ausgelöst hat. Ich bin nur wirklich paranoid.
MoonRunestar