更新:2025/01/26
【windows】mklinkの使い方とオプションについて


はるか
シンボリックリンクって、ファイルやフォルダを別の場所に移動しても参照できる仕組み。

ふゅか
そうそう!実体がどこにあっても、リンクでアクセスできるの便利よね。
目次
1. mklinkとは
Windowsのmklinkは、シンボリックリンクやハードリンク、ディレクトリジャンクションを作成するためのコマンドです。シンボリックリンクを使うことで、実体ファイル/フォルダを別の場所に移動しても、リンク先を透過的に参照できるといったメリットがあります。
以下では、主なオプションと使用例をまとめています。
1.1. 基本構文
mklink [オプション] <リンク名> <リンク先(実体)>
<リンク名>
: 新たに作成するリンクのパス。<リンク先>
: 実際に存在するファイルやディレクトリのパス。
2. よく使われるオプション
オプション | 意味 |
---|---|
/D | ディレクトリ用のシンボリックリンクを作成します。 |
/H | ハードリンク(ファイル専用)を作成します。 |
/J | ディレクトリジャンクションを作成します。 |

ふゅか
オプションで違いがあるの?

はるか
ある。たとえば、
/D
はディレクトリ用。/H
はハードリンク。/J
はディレクトリジャンクション。
ふゅか
へえ、ディレクトリジャンクションって、フォルダ全体を仮想的に結ぶ感じなんだ!具体的なイメージがつかめてきたよ。
2.1. シンボリックリンク(/D なし、または /D あり)
- /D なし: 通常はファイルに対するシンボリックリンクを作成します。
- /D あり: ディレクトリに対するシンボリックリンクを作成します。
2.2. ハードリンク (/H)
- ファイルに対するハードリンクを作成します。
2.3. ディレクトリジャンクション (/J)
- ディレクトリ同士を結びつける際に使われます。
- シンボリックリンクとの差異は小さいですが、ジャンクションは主にディレクトリ階層自体を“仮想的にマウント”するイメージです。
3. 使用例
3.1. ファイルのシンボリックリンクを作成する
mklink "C:\data\myLink.txt" "C:\data\original.txt"
myLink.txt
はシンボリックリンクになります。C:\data\original.txt
が実際のファイル。
エクスプローラでは次のように表示されます。
3.2. フォルダ(ディレクトリ)のシンボリックリンクを作成する
mklink /D "C:\data" "C:\Project"
ProjectLink
はシンボリックリンクのディレクトリ。D:\Project
が実際のディレクトリ。
3.3. ファイルのハードリンクを作成する
mklink /H "C:\data\hardLink.txt" "C:\data\original.txt"
hardLink.txt
はハードリンク。
3.4. ディレクトリジャンクションを作成する
mklink /J C:\test\junkLink C:\test\junk
C:\test\junkLink
はディレクトリジャンクション。C:\test\junk
が実体のディレクトリ。
エクスプローラで確認すると、
PR