ウェブサイト検索

Windowsでシンボリックリンク(またはシンリンク)を作成するための完全ガイド


重要なポイント

  • シンボリックリンクは、Windows 11およびWindows 10における高度なショートカットで、ファイルやフォルダーを指し示すことができ、アプリケーションがそれらを別の場所にあるかのようにアクセスできるようにリダイレクトします。
  • シンボリックリンクには2つのタイプがあります。ソフトリンクはファイルが保存されている場所にリダイレクトし、ハードリンクはシンボリックリンクの場所にファイルやフォルダが存在するかのように見せかけます。
  • シンボリックリンクは、コマンドプロンプトのmklinkコマンドを使用して作成でき、ファイルやディレクトリへのシンボリックリンクを作成するためのさまざまなオプションがあります。あるいは、リンクシェル拡張を使用することで、グラフィカルなツールを使ってより多くのオプションでシンボリックリンクを作成することもできます。

Windows 11およびWindows 10は、システム上のファイルやフォルダーを指すシンボリックリンク(シンリンクとも呼ばれます)をサポートしています。これらはコマンドプロンプトまたはリンクシェル拡張というサードパーティツールを使用して作成できます。

シンボリックリンクとは何ですか?

シンボリックリンクは基本的に高度なショートカットです。個々のファイルやフォルダーへのシンボリックリンクを作成すると、そのリンクはファイルやフォルダーと同じようにWindowsに表示されます。実際には、ファイルやフォルダーを指すだけのリンクです。

例えば、プログラムが C:\Program にファイルを必要としているとしましょう。D:\Stuff にこのディレクトリを保存したいのですが、プログラムはファイルを C:\Program に置くことを要求しています。元のディレクトリを C:\Program から D:\Stuff に移動し、C:\Program に D:\Stuff を指すシンボリックリンクを作成することができます。プログラムを再起動すると、プログラムは C:\Program でディレクトリにアクセスしようとします。Windows はそれを自動的に D:\Stuff にリダイレクトし、すべてが C:\Program にあるかのようにうまくいきます。

このトリックは、Dropbox、Google Drive、OneDriveのようなプログラムと任意のフォルダーを同期させるなど、さまざまな目的で使用できます。

シンボリックリンクには2種類あります:ハードリンクとソフトリンクです。ソフトシンボリックリンクは、標準的なショートカットと同様に機能します。フォルダーへのソフトリンクを開くと、ファイルが保存されているフォルダーにリダイレクトされます。しかし、ハードリンクは、ファイルやフォルダーが実際にシンボリックリンクの位置に存在するかのように見せかけ、アプリケーションはそれを把握できません。そのため、ハードシンボリックリンクはほとんどの状況でより便利です。

Windows は実際には「ハードリンク」と「ソフトリンク」という用語を使用していません。代わりに「ハードリンク」と「シンボリックリンク」という用語を使用します。Windows のドキュメントでは、「シンボリックリンク」は「ソフトリンク」と同じ意味です。しかし、mklink コマンドは、ハードリンク(Windows では「ハードリンク」として知られています)とソフトリンク(Windows では「シンボリックリンク」として知られています)の両方を作成できます。

mklinkを使用してシンボリックリンクを作成する方法

コマンドプロンプトウィンドウで、管理者として、または通常のユーザーとしてmklinkコマンドを使用してシンボリックリンクを作成できます。管理者コマンドプロンプトウィンドウを使用せずにこれを行うには、まず設定 > 更新とセキュリティ > 開発者向けから開発者モードを有効にする必要があります。

管理者としてコマンドプロンプトを開くには、スタートボタンをクリックし、「cmd」または「コマンドプロンプト」を検索して、「管理者として実行」を選択します。

Windows 11では、シンボリックリンクを作成するために管理者権限は必要ありません。

余分なオプションなしで、mklink はファイルへのシンボリックリンクを作成します。以下のコマンドは、ファイルTargetを指すLinkにシンボリックまたは「ソフト」リンクを作成します:

mklink Link Target

/Dを使用して、ディレクトリを指すソフトリンクを作成します。次のように:

mklink /D Link Target

ファイルを指すハードリンクを作成したいときは、/Hを使います:

mklink /H Link Target

/Jを使用してディレクトリへのハードリンク、つまりディレクトリジャンクションを作成します:

mklink /J Link Target

たとえば、「C:\LinkToFolder」というディレクトリジャンクション(フォルダーへのハードリンク)を、「C:\Users\Name\OriginalFolder」を指すように作成したい場合、次のコマンドを実行します:

mklink /J C:\LinkToFolder C:\Users\Name\OriginalFolder

スペースを含むパスの周りに引用符を置く必要があります。例えば、フォルダーが「C:\Link To Folder」と「C:\Users\Name\Original Folder」と名付けられている場合は、次のコマンドを使用します:

mklink /J "C:\Link To Folder" "C:\Users\Name\Original Folder"

「この操作を実行する権限が不十分です。」というメッセージが表示された場合は、コマンドを実行する前にコマンドプロンプトを管理者として起動する必要があります。

グラフィカルツールを使用してシンボリックリンクを作成する方法

もしグラフィカルツールを使用してこれを行いたい場合は、Link Shell Extensionをダウンロードしてください。ツール自体をダウンロードする前に、適切な前提パッケージをダウンロードすることを忘れないでください。両方ともツールのダウンロードページにリンクされています。

リンクシェル拡張はWindows 11で動作しますが、オプションを表示するには「さらにオプションを表示」をクリックする必要があります。また、レジストリハックを使用して拡張された右クリックコンテキストメニューを有効にすることもできます。

インストールが完了したら、リンクを作成したいファイルまたはフォルダーを見つけて、右クリックし、メニューから「リンクソースを選択」を選びます。

次に、別のフォルダー内を右クリックし、「ドロップとして」メニューをポイントして「ハードリンク」を選択するとファイルへのハードリンクが作成され、「ジャンクション」を選択するとディレクトリへのハードリンクが作成され、「シンボリックリンク」を選択するとファイルまたはディレクトリへのソフトリンクが作成されます。

シンボリックリンクの削除方法

シンボリックリンクを削除するには、他のファイルやディレクトリと同じように単に削除すれば良いです。ただし、リンク自体を削除することを忘れずに、リンク先のファイルやディレクトリを削除しないように注意してください。

シンボリックリンクの大きな利点は、関連するファイルやフォルダーを気にせずに、いつでも自由にシンボリックリンクを削除できることです。

関連記事: