ちょっとしたことから「WindowsでもLinuxみたいにシンボリックリンク作れないかなぁ?」という疑問が湧いたので調べてみました。
結論から言うとできます!
では、シンボリックリンクの作り方を紹介します。
【作成方法】
まず方法ですが、mklinkコマンドを使います。
このコマンドで、シンボリックリンクを作ることが可能です。
使い方は簡単で、
mklink シンボリックリンク名 リンク先
でシンボリックリンクを作成することができます。
フォルダのシンボリックリンクを作成する場合は、
mklink /d シンボリックリンク名 リンク先
のように、「/d」オプションを付加します。
これでシンボリックリンクが作成可能です。
【用途】
使い道ですが、例えば、Cドライブにゲームのクライアントプログラムがあったとします。
スクリーンショットを取るフォルダの位置が分かりにくいので、Dドライブ直下の「D:\pic」のシンボリックリンクをクライアントプログラムのキャプチャフォルダと差し替えます。
すると、キャプチャは「D:\pic」の下に生成されるようになります。
私の場合、Minecraftのスクリーンショットをマイピクチャフォルダの下に生成されるようにしてみました。
管理が楽になりましたし、Cドライブの圧迫を軽減することができました。
ドライブを移動できないプログラムで、出力されるファイルの生成場所を指定できない時にシンボリックリンクの作成は重宝しそうです。
【その他】
他にもオプションでは「/h」や「/j」などがあり、それぞれハードリンクとジャンクションというものがありますが、無理に覚える必要はありませんので、さらっと紹介だけしますね。
ハードリンクは1つのファイルの実体を指す複数のパスのことです。
ハードリンクを作成した場合、そのリンクからもファイルからも同一の実体を参照できます。
つまり、一方のファイルを削除してももう一方からは実体にアクセス可能ということになります。
一見すると便利なのですが、Windowsのシステム上ではファイルサイズが2ファイル分、つまり2倍で表示されるので、ユーザーとしては分かりにくいかも。。。
ジャンクションは、シンボリックリンクのフォルダ専用版と捉えると良いと思います。
Windows Vista以降はディレクトリのシンボリックリンクの作成も行えるため、無理に覚える必要はありません。
まとめ
- Windowsでもシンボリックリンクが作成可能(Windows Vista以降)
- コマンドは「mklink シンボリックリンク名 リンク先」
- Linuxのシンボリックリンク作成とリンク名とリンク先の順序が逆になっている点に注意!
- ディレクトリのシンボリック作成は「/d」オプションを追加すること
コメント