it-swarm-ru.tech

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

В Windows Vista добавлена ​​возможность создавать символические ссылки на файлы и каталоги. Как создать символическую ссылку и какие текущие потребительские и серверные версии Windows поддерживают ее?

113
cowgod

Вы можете создать символическую ссылку с помощью утилиты командной строки 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.

Символьные ссылки через mklink доступны начиная с Windows Vista и Windows Server 2008. В Windows XP и Windows Server 2003 вы можете использовать

fsutil hardlink create <destination filename> <source filename>

Согласно msdn.Microsoft , символические ссылки НЕ поддерживаются в FAT16/32 и exFAT. Кажется, что Windows поддерживает их только с NTFS-разделов. Будущие операционные системы Windows, вероятно, продолжат поддержку mklink.

Вы можете прочитать дополнительную информацию об этой новой функции в Microsoft TechNet , блог Junfeng Zhang или howtogeek.com .

110
cowgod

В Windows XP вы можете использовать fsutil (встроенный в ОС) для создания жесткой ссылки

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

Имейте в виду, что fsutil будет работать, только если оба находятся на одном диске

30
saschabeaumont

Одна маленькая вещь, если вы используете Powershell, mklink не работает напрямую, запустите его так:

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

Используйте mklink или соединение из Sysinternals (Microsoft). Я верю mklink будет работать в Windows 2000 и более поздних версиях, но я не могу найти никакой трудной документации по этому вопросу. junction для Windows 2000 и выше.

7
user2287

Ни в одном из ответов этого не было, но linkd.exe (в наборе ресурсов Windows 2003 здесь ) позволяет создавать соединения, которые в значительной степени функционируют, как мягкие/жесткие ссылки в Linux. , Соединения доступны с Windows 2000 и выше, поэтому просто скопируйте linkd.exe в целевую систему, и она должна работать.

4
romandas

Если вы все еще используете старую Windows, например XP, 2000, 2003 и т.д., Попробуйте ссылка NTFS.

Я использую это много. Вы получаете ссылку меню правой кнопкой мыши для создания точки соединения. Отличный материал.

3
Stewart Robinson

Смотрите TechNet запись. Я считаю, что это Vista/Server 2008 и выше.

2
user1797

Чтобы убедиться, что ваши ссылки работают, вы можете проверить конфигурацию вашего сервера. Ссылки могут быть сделаны, но если вы не используете параметр symlinkevaluation в следующей команде, ваши ссылки могут не работать.

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

Смотрите также http://technet.Microsoft.com/en-us/library/cc754077%28v=ws.10%29.aspx . По умолчанию активируются только локальные опции.

1
user906489