Windowsでシンボリックリンクを作成する簡単で簡単な方法は?


回答:


108

ジャンクションを見たことがありますか?

また、Windows Vistaでは、シンボリックリンクを作成するための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.

スコット・ハンセルマンは、それについての記事を書いています http://www.hanselman.com/blog/MoreOnVistaReparsePoints.aspx

Windows XPについてのみ話している場合は、Junctionツールのみを使用したことがあります。


4
別のオプションはmklinkの/ Jスイッチ(「mklink / J <JUNCTION> <DIR>」など)のように見えます。別個の実行可能ファイルではなく、cmdのコマンドであるため、PowerShellから呼び出す場合は、cmdにシェルアウトする必要があります(つまり、「cmd / c mklink / J <JUNCTION> <DIR>」 )
デビッドモハンドロ

うわージャンクションは素晴らしい作品。実際のシンボリックリンクが作成されるため、Cygwinでもリンクをたどることができます。
スタイフル

3
mklinkまさに私が探していたものでした。
prolink007

2
なぜ、なぜ古いUNIX lnコマンドの引数の順序を逆にしたのですか?
kbolino

1
@kbolino:簡単!彼らは単にオープンソースの世界が彼らに「追いつく」ことを期待しているからです...うーん。
16年

22

ファイルへのシンボリックリンク、「ジャンクション」と呼ばれる古いタイプのリンク(基本的にはフォルダーへのシンボリックリンク)、およびより多くのエキゾチックなタイプのリンクを簡単に作成できるリンクシェル拡張と呼ばれるツールがあります。

ここに画像の説明を入力してください

基本的な使用方法は簡単です。ソースフォルダーに移動し、リンクするファイルまたはフォルダーを右クリックして、コンテキストメニューから新しい[リンクソースを選択]オプションを選択します。次に、リンクをドロップするフォルダーに移動し、右クリックして、[名前を付けてドロップ]を選択し、ファイルの場合は[シンボリックリンク]を、フォルダーの場合は[ジャンクション]を選択します。

しかし

注意:マイクロソフトがこれを困難にしている理由の1つは、ジャンクションとシンボリックリンクにより、重要なファイルを誤って削除することが非常に簡単になるためです!

Windows 7より前のバージョンでは、エクスプローラーでジャンクションまたはシンボリックリンクを削除すると、元のディレクトリも自動的に削除されます。

この問題が解決されたと信じています...しかし、もちろん約束はしません...サードパーティのファイルブラウザには特に注意してください(シンボリックリンクが必要な場合は、痛いほど確信しています) Windows 7 Explorerがどれほど激しく吹いているかを認識しています。)

しかし、私は脱線します。私のポイントは、注意して、宿題をし、LSEのドキュメントを読んでジャンクションとシンボリックリンクが実際にどのように機能するかを調べ、ジャンクションとシンボリックリンクをいじり始める前にすべてをバックアップすることです!


9

参照されたディレクトリは、実際に%PATH%に追加されたかのように機能するはずです。

いいえ、C:\ binを%PATH%に追加し、c:\ bin内にc:\ bin \ anotherDir \というジャンクションを作成してc:\ anotherDir \を指すようにして、some.exeを実行できるようにします。次のようなコマンドライン:

> anotherDir\some.exe

これは、%PATH%変数がサブディレクトリ(シンボリックリンクかどうか)で機能しないため、機能しません。

some.exeへのハードリンクを直接作成する必要があるため、ハードリンクc:\ bin \ some.exeはc:\ anotherDir \ some.exeを指します。

だから要約すると、私はあなたがあなたが求めていることを正確にできるとは思わない。それは、ジャンクションとハードリンクを作成するためにLink Shell Extensionをお勧めするということです。非常に使いやすいWindowsエクスプローラー拡張機能で、ほとんどのジャンクションツールよりも多くの機能を提供します。


7

Windowsで Symlinkerを作成するGUIツールのSymlinkerを試してください

このアプリケーションを実行するには.Net Framework 3.5が必要です(SP1を推奨)。2015年4月24日以降、このソフトウェアは

  • Windows Vista
  • Windows 7
  • Windows 8および8.1

Symlinker UI


Windows XPでシンボリックリンクを作成できますか?
セバスチャンゴデレット

7

ネイティブWindows Vista、7、8コマンド:

  1. ファイルシンボリックリンク(デフォルト):
    • mklink <oldpath> <newpath>
  2. ディレクトリシンボリックリンク
    • mklink /D <oldpath> <newpath>

これは7年前の回答としてすでに提案されていました。
ジョシュ

3
これは不正確です。WindowsXPにネイティブにmklinkコマンドがありませ
-patricktokeeffe

Vistaが含まれた最初のWindowsのバージョンだったmklinkあたりに、technet.microsoft.com/en-us/library/cc753194(v=ws.11).aspx
私は復活モニカ言う

4

XPに付属しているNTFSのバージョンがシンボリックリンクをサポートしているとは思わない。VistaおよびWindows 7に同梱されているNTFS6は、mklinkコマンドでシンボリックリンクをサポートしています。NTFSのXPバージョンはハードリンクをサポートします、これらはボリュームにまたがることはできません。


2

ジャンクションは優れたユーティリティですが、注意すべき点の1つは、ジャンクションポイントがWindowsエクスプローラーの通常のフォルダーとまったく同じに見えることです。

コマンドラインで「junction.exe -s」を使用して、フォルダーおよびサブフォルダー内のすべてのジャンクションをリストします。


2

Far Managerでシンボリックリンクを作成します:Alt+ F6またはF7


また、Windowsのツリータイプのリンク(ハードリンク、ジャンクションポイント、シンボリックリンク)に関する洞察に富んだアクティクルもあります。

https://translate.google.com/translate?hl=&sl=ru&tl=en&u=https%3A%2F%2Fgeektimes.ru%2Fpost%2F50878%2F

リンクを作成する他のいくつかのツールがリストされています。


0

Microsoft SysInternalsのJunctionツールを使用して推奨します:http ://technet.microsoft.com/en-us/sysinternals/bb896768.aspx

cmd.exeを使用した例:

junction c:\Program-Files "c:\Program Files"


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.