Как создать символическую ссылку на Windows 10?

102

Читал http://www.dropboxwiki.com/tips-and-tricks/sync-game-saves-across-multiple-computers и я знаю , стык / mklink работал в Windows 7 , а также, но кажется , что команда стыка была удалился в Windows 10.

Как правильно создавать символические ссылки в Windows 10?

красный
источник
2
Вы можете скачать соединение из Windows SysInternals (которая является частью Microsoft).
DavidPostill
Это сработало, большое спасибо! Если вы ответите, я могу принять это как правильный ответ.
красное
Отлично. Я напишу это как ответ.
DavidPostill
9
Что не так с mklink?
Даниэль Б

Ответы:

122

Похоже, что команда соединения была удалена в Windows 10.

Вы можете скачать соединение из Windows SysInternals (которая является частью Microsoft):

Junction не только позволяет создавать NTFS-соединения, но и позволяет увидеть, являются ли файлы или каталоги точками повторного анализа. Точки повторной обработки представляют собой механизм, на котором основаны соединения NTFS, и они используются службой удаленного хранения Windows (RSS), а также точками монтирования тома.

Пожалуйста, прочитайте эту статью Microsoft KB для советов по использованию соединений.

Обратите внимание, что Windows не поддерживает переходы к каталогам на удаленных общих папках.


Итак, как мне создать перекрестки или символические ссылки на каталоги в Windows 10?

Загрузите, junctionкак указано выше.

Теперь вы можете использовать следующие команды.

Создать перекресток:

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

Создайте в каталоге символическую ссылку:

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

Вы можете использовать mklink /jили junctionв Windows 10 для создания соединений.

Вы можете использовать mklink /dв Windows 10 для создания символьных ссылок каталога.

Примечания:

  • junctionможет также перечислить соединения и определить, является ли файл соединением в отличие от mklink.

  • mklinkэто внутренняя команда, доступная только внутри cmdоболочки

  • По умолчанию права администратора необходимы для создания символических ссылок.

    Он также может быть предоставлен другим пользователям. Параметр безопасности «Создание символических ссылок» может быть предоставлен по адресу:

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

Примеры

Использование mklink для создания символической ссылки на каталог:

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

Использование mklink для создания соединения:

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

Использование соединения для создания соединения:

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

Дальнейшее чтение

ДэвидПостилл
источник
Это отличается от mklink /j?
Джонно
1
@Jonno Насколько я знаю, это то же самое при создании соединений. junctionтакже список переходов в отличие отmklink
DavidPostill
2
Насколько я могу судить, вы не можете использовать mklinkвнутри PowerShell , поэтому вы должны использовать cmd.exe. Кроме того, вы должны запустить его от имени администратора. Но не верьте мне на слово. Я использую компьютер с Windows всего около 40 часов.
Бруно Броноски
@BrunoBronosky Правильно. Это потому mklink, что внутренняя команда доступна только внутри cmdоболочки. Примечание некоторые cmdвнутренние команды были реализованы в PowerShell, например dir.
DavidPostill
2
@DavidPostill Улучшение, но все же большое внимание уделяется junctionотдельной загрузке. mklinkКазалось бы, лучше работать в качестве основного фокуса, с junctionрамкой в ​​качестве дополнительного варианта в конце.
WBT
43

Откройте сеанс PowerShell от имени администратора и введите:

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

или используя менее подробный синтаксис:

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

Конечно, в 2016 году и с Windows 10 вы не хотите возиться с командами cmd или внешними загрузками.

Windows 10 поставляется с PowerShell 5, который имеет встроенную поддержку для создания символических ссылок.

Питер Хандорф
источник
6
Конечно, в 2016 году мне не нужно было прыгать через обручи для создания символических ссылок! Еще одно из окон концерта провалилось.
Дэвид Арно
11
Вы шутите, верно? Я бы предпочел сделать «mklink / d test-dir-sym-link test», чем «New-Item -ItemType SymbolicLink -Path E: \ Data \ MyGames -Target» C: \ users \ UserName \ MyGames ". Супер Синтаксис PowerShell мне не очень нравится ...
Хайме де лос Ойос М.
8
@JaimedelosHoyosM - используя более короткий синтаксис PowerShell, который вы можете использоватьni test-dir-sym-link -i SymbolicLink -ta test
Питер Хандорф,
Есть ли способ создать SymbolicLink из PowerShell, например, без прав администратора?
cjsimon
2
@scape - вы можете использовать первые несколько букв имени параметра, если они однозначно идентифицируют параметр, например -i, достаточно для, -ItemTypeно -tнедостаточно, потому что существует более одного параметра, с которого tнужно начинать , поэтому нам нужно использовать-ta
Peter Hahndorf
14

Если вам нужен GUI Tool для создания / редактирования этих символических ссылок, используйте http://schinagl.priv.at/nt/hardlinkshellext/linkshellextension.html

Расширение Link Shell (LSE) обеспечивает создание жестких ссылок, переходов, точек монтирования тома и символических ссылок Windows7 / 8 (здесь и далее называемых ссылками) процесса клонирования папок, в котором используются жесткие ссылки или символические ссылки, и процесса копирования, обеспечивающего Соединения, символические ссылки и жесткие ссылки. LSE, как следует из его названия, реализован в виде расширения оболочки и доступен из Windows Explorer или аналогичных файловых / папочных менеджеров. Расширение позволяет пользователю выбрать один или несколько файлов или папок, а затем с помощью мыши завершить создание необходимых ссылок - жестких ссылок, переходов или символических ссылок или, в случае папок, создать клоны, состоящие из жестких или символических ссылок. LSE поддерживается во всех версиях Windows, которые поддерживают NTFS версии 5.0 или новее, включая Windows XP64 и Windows7 / 8/10. жесткие ссылки,

введите описание изображения здесь

odvpbre
источник
3
Пожалуйста, прочитайте, Как я рекомендую программное обеспечение для некоторых советов относительно того, как Вы должны рекомендовать программное обеспечение. Вы должны предоставить хотя бы ссылку, некоторую дополнительную информацию о самом программном обеспечении и о том, как его можно использовать для решения поставленной задачи.
DavidPostill
1
Это хороший инструмент, но немного информации в ответе было бы неплохо.
DavidPostill
1

Не нужно ничего устанавливать!

Существует простой symlink_creator.bat файл с открытым исходным кодом , и вы можете просто перетащить нужный файл / папку в этот файл.


Для любопытных пользователей: это программа с открытым исходным кодом, поэтому просто щелкните правой кнопкой мыши по файлу и убедитесь, что он сам содержит несколько строк кода.

T.Todua
источник
6
Вы должны добавить в свой ответ, как именно работает этот пакетный файл и какова ваша связь с ним. Пакетные файлы могут быть очень разрушительными, и запуск случайных файлов из Интернета идет вразрез со здравым смыслом.
MoonRunestar
более того, интересно, что вы не прокомментировали эти слова в ответе выше, который ссылается на неизвестную программу, а ссылка, которую я использовал, ссылается на открытый исходный код.
Т.Тодуа
1
В ответе выше уже был комментарий модератора. Я был в основном обеспокоен вашим ответом, потому что сайт, на который вы ссылались, выглядит несколько схематично, и формат вашего ответа вызвал для меня некоторые красные флажки. Я просто параноик на самом деле.
MoonRunestar
к сожалению, это заканчивается ошибкой «синтаксис неверен»
tutejszy