Windowsでシンボリックリンクを実現する
よく忘れるのでメモ。
PowerShell
ではなく、CMD.exe
(いわゆる DOS 窓)からの実行です。
%USERPROFILE%/Download を移動したい
SSD が 512GB しかないので、アプリをダウンロードしたものを一緒に置いておくとつらいので、別のドライブにダウンロードディレクトリを移動することにしました。
「ダウンロード」フォルダのプロパティから「場所」を開き、別ドライブにすることでダウンロードフォルダ自体は変更できます。
ですがSlack
やThunderBird
など、一部のプログラムでは直接「%USERPROFILE%\Downloads」がターゲットになっている様子。
プログラムごとにいちいち設定変更するのも面倒なので、%USERPROFILE%\Downloads
を他の場所にリンクしてしまいましょう。
まずは「ダウンロード」フォルダの向き先を変える
今回は外付け HDD「F:\downloads」にします。
「ダウンロード」フォルダのプロパティから、「場所」をお好みの場所に変更します。
コマンド
Windows + R
から 「ファイル名を指定して実行」ダイアログを開き、 CMD
と入力して、コマンドプロンプトを開きます。
開いたら C:\Users\nekoha>
の様に、ユーザディレクトリがカレントディレクトリになっているはず。
ユーザディレクトリのDownloads
を消して、F:\downloads
に向けます。
rmdir /s/q Downloads
mklink /D Downloads F:\downloads
これで作業は完了です!
mklink コマンドメモ
せっかくなのでmklink
についてもメモ。
ディレクトリにシンボリックリンクを張る場合は/D
オプションが必要になります。
mklink /D [新しいディレクトリ名] [リンク先(実体)のディレクトリ名]
ファイルの場合は/D
オプション不要。
mklink /D [新しいファイル名] [リンク先(実体)のファイル名]
from
とto
の関係を to
, from
の順で書くので紛らわしいですね。
逆に書くと「ローカル NTFS ボリュームは、操作を完了する必要があります。」の様にエラーメッセージが出ます。