コマンドプロンプトでシンボリックリンク、ハードリンクを作成する †
mklinkコマンドを使用することにより、ファイルやディレクトリのシンボリックリンクおよびハードリンクを作成することができます。
本資料ではWindows8を使用して動作確認を行いました。
関連資料 †
mklinkについて †
mklinkコマンドはWindows Vistaから使えるようになりました。
したがって、WindowsXPにはmklinkコマンドはありません。
以下はmklinkコマンドnヘルプを出力して貼ったものです。
本資料では、/D, /Hオプションを使用した例を記します。
C:\WINDOWS\system32>mklink
シンボリック リンクを作成します。
MKLINK [[/D] | [/H] | [/J]] リンク ターゲット
/D ディレクトリのシンボリック リンクを作成します。既定では、
ファイルのシンボリック リンクが作成されます。
/H シンボリック リンクではなく、ハード リンクを作成します。
/J ディレクトリ ジャンクションを作成します。
リンク 新しいシンボリック リンク名を指定します。
ターゲット 新しいリンクが参照するパス (相対または絶対)
を指定します。
シンボリックリンクを作成してみる・ファイル編 †
コマンドプロンプトは管理者で起動しmklinkコマンドを試しました。
- 構文
mklink シンボリックリンク名 ファイル名
MKLINKコマンドでシンボリックリンクを作るには以下のような操作になります。
操作はすべてコマンドプロンプトから行いました。
- デスクトップ上にsrc.txtを作成。
C:\Users\sakura\Desktop>echo sakura > src.txt
C:\Users\sakura\Desktop>type src.txt
sakura
- MKLINKコマンドを使用してsrc.txtのシンボリックリンクlnk.txtを作成します。
C:\Users\sakura\Desktop>mklink lnk.txt src.txt
lnk.txt <<===>> src.txt のシンボリック リンクが作成されました
- dirコマンドで確認すると <SYMLINK>と表示されているのが確認できます。
C:\Users\sakura\Desktop>dir *.txt
ドライブ C のボリューム ラベルは Windows8 です
ボリューム シリアル番号は ABCD-ABCD です
C:\Users\sakura\Desktop のディレクトリ
2013/02/07 23:42 <SYMLINK> lnk.txt [src.txt]
2013/02/07 23:40 9 src.txt
2 個のファイル 9 バイト
0 個のディレクトリ 371,760,795,648 バイトの空き領域
シンボリックリンクを作成してみる・ディレクトリ編 †
ディレクトリのシンボリックリンクを作成するには、/Dオプションを使用します。
MKLINKコマンドでディレクトリのシンボリックリンクを作るには以下のような操作になります。
操作はすべてコマンドプロンプトから行いました。
- ディレクトリsrcdirを作成し、作成したディレクトリ内にtext.txtを作成しました。
C:\Users\sakura\Desktop>mkdir srcdir
C:\Users\sakura\Desktop>echo sakura > srcdir\text.txt
- MKLINKコマンドを使用してsrcdirのシンボリックリンクを作成します。
C:\Users\sakura\Desktop>mklink /d lnkdir srcdir
lnkdir <<===>> srcdir のシンボリック リンクが作成されました
- dirコマンドで確認すると<SYMLINKD>が作成されているのが確認できます。
C:\Users\sakura\Desktop>dir
ドライブ C のボリューム ラベルは Windows8 です
ボリューム シリアル番号は ABCD-ABCD です
C:\Users\sakura\Desktop のディレクトリ
2013/02/07 23:50 <DIR> .
2013/02/07 23:50 <DIR> ..
<snip>
2013/02/07 23:50 <SYMLINKD> lnkdir [srcdir]
2013/02/07 23:49 <DIR> srcdir
<snip>
7 個のファイル 9,873 バイト
4 個のディレクトリ 371,753,107,456 バイトの空き領域
- text.txtをシンボリックリンクしたディレクトリ名を使用し表示してみます。
C:\Users\sakura\Desktop>type lnkdir\text.txt
sakura
ハードリンクを作成してみる(ファイル編) †
以下ハードリンクを作成する例です。
- ターゲットとなるファイルhsrc.txtを作成しtypeコマンドで内容を確認。
C:\Users\sakura\Desktop>echo sakura > hsrc.txt
C:\Users\sakura\Desktop>type hsrc.txt
sakura
- ハードリンク名(hlnk.txt)を作成します。
C:\Users\sakura\Desktop>mklink /h hlnk.txt hsrc.txt
hlnk.txt <<===>> hsrc.txt のハードリンクが作成されました
C:\Users\sakura\Desktop>dir *.txt
ドライブ C のボリューム ラベルは Windows8 です
ボリューム シリアル番号は ABCD-ABCD です
C:\Users\sakura\Desktop のディレクトリ
2013/02/07 23:59 9 hlnk.txt
2013/02/07 23:59 9 hsrc.txt
- hlnk.txtの内容を変更しhsrc.txtを確認します。
ハードリンク(実体が同じ)なのでhlnk.txt, hsrc.txtともに同じ内容です。
C:\Users\sakura\Desktop>echo suzuran >> hlnk.txt
C:\Users\sakura\Desktop>type hsrc.txt
sakura
suzuran
以上、mklinkコマンドの使用方法でした。