web-dev-qa-db-ja.com

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以降で使用できます。WindowsXPおよびWindows Server 2003では、

fsutil hardlink create <destination filename> <source filename>

msdn.Microsoft によると、シンボリックリンクはFAT16/32およびexFATではサポートされていません。 WindowsはNTFSパーティションとの間でのみサポートしているようです。将来のWindowsオペレーティングシステムは、mklinkのサポートを継続する可能性があります。

この新機能の詳細については、 Microsoft TechNetJunfeng Zhangのブログ または howtogeek.com を参照してください。

110
cowgod

WindowsではXP fsutil(OSに組み込まれている)を使用してハードリンクを作成できます

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

Fsutilは、両方が同じドライブ上にある場合にのみ機能することに注意してください

30
saschabeaumont

小さなことの1つは、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 または junction from Sysinternals (Microsoft)を使用します。私信じるmklinkはWindows 2000以降で動作しますが、それに関するハードドキュメントは見つかりません。 junctionは、Windows 2000以降用です。

7
user2287

どの回答にもこれは表示されませんでしたが、linkd.exe(Windows 2003リソースキット here 内)を使用すると、Linuxのソフト/ハードリンクと同じように機能するジャンクションを作成できます。 。ジャンクションはWindows 2000以降で使用できるため、linkd.exeをターゲットシステムにコピーするだけで機能します。

4
romandas

XP、2000、2003などの古いWindowsを使用している場合は、NTFS Linkを試してください。

よく使っています。ジャンクションポイントを作成するためのシェルリンクの右クリックメニューオプションが表示されます。素晴らしいもの。

3

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