シンボリックリンクの使い方について説明します。
gitの管理ができない場所で、git管理したり
保存場所が変更できない場所で、別の場所にファイルの実体を置くことができます。
やり方
今回設定するパスは、コチラ。
サクラエディタの設定を、Dドライブに置く設定をします。
項目 | パス |
---|---|
リンク(リンク元) | C:\Users\userName\AppData\Roaming\sakura |
ターゲット(リンク先) | D:\Tool\Setting\sakura |
まずはリンク元のフォルダを、削除または名称を変更します。
「D:\Tool\Setting」に「sakura」を作っておきます。
それではコマンドプロンプトを起動しましょう。
「Winキー+R」で、「ファイル名を指定して実行」で「cmd」と入力し、「OKボタン」を押すのが手っ取り早いです。
起動したらこのようなコマンドを実行します。
mklink /D C:\Users\userName\AppData\Roaming\sakura D:\Tool\Setting\sakura
実行するとこんな表示になります。
c:>mklink /D C:\Users\userName\AppData\Roaming\sakura D:\Tool\Setting\sakura
C:\Users\userName\AppData\Roaming\sakura <<===>> D:\Tool\Setting\sakura のシンボリック リンクが作成されました
すると、「C:\Users\userName\AppData\Roaming」に「sakura」というショートカットマークの付いたフォルダができますね。
コレを開いてみましょう。
「C:\Users\userName\AppData\Roaming\sakura」というパスになっています。
それでは「D:\Tool\Setting\sakura」を開いてみましょう。
Dドライブの方に、適当なファイルを作成してみてください。
すると、Cドライブ側にも同じファイルができませんか?
このように、パスはそれぞれ違うものでありながら、同じフォルダ(今回の場合、実態はDドライブ側)を見ていることになります。
一見するとショートカットに近いです。
しかし両方のフォルダ自体は存在しています。でも内容は同じものになっています。
ヘルプ内容
コマンドプロンプトのヘルプ内容です。
ご参考までに。
mklink
シンボリック リンクを作成します。
MKLINK [[/D] | [/H] | [/J]] リンク ターゲット
/D ディレクトリのシンボリック リンクを作成します。既定では、
ファイルのシンボリック リンクが作成されます。
/H シンボリック リンクではなく、ハード リンクを作成します。
/J ディレクトリ ジャンクションを作成します。
リンク 新しいシンボリック リンク名を指定します。
ターゲット 新しいリンクが参照するパス (相対または絶対)
を指定します。
コレをするとどうなるの?
コレを行うことで何ができるかというと
「このアプリの保存先、ココのフォルダ固定だけど、こっちにファイル保存したいな……」
というときや
「ここアクセス禁止だからgit置けないけど、gitに保存したい……」
なんてときに効果を発揮します。
前者はシステムとデータで、ドライブを分けている方なんかは効果覿面ですね。
「データはDドライブなのに、Cドライブに勝手に保存される……」
なんてとき、シンボリックリンクを貼ってあげれば、
- 勝手にCドライブに保存される
- でも実際の保存先は、シンボリックリンクしているDドライブ
これによってアクセスは成功するうえ、ファイルはシンボリックリンクしたDドライブに保存されます。
やったね!
またgit等のバージョン管理ソフトなんかも、シンボリンクリンクをした「データが保管されるフォルダ」を指定してあげることで、バージョン管理とアプリからの読み書き、どちらも実現ができます。
ぼくは今回これでサクラエディタの設定をBitBucketにUPできました。
ステキ!
勝手な理解
ぼくの勝手な理解方法です。
というよりも、「どうしたら分かりやすく考えられるか?」を考えていた結果、出てきた理解方法です(笑)
ファイルが置かれるフォルダを「物置」として考えてください。
そしてターゲットは「お店」のようなものと考えてください。
ターゲットとして設定したフォルダは、「物置」を「自分のもの」として見ることができます。
なので他の人(アプリ)にそのファイルを見せるとき「自分のお店のもの」として見る事が出来ます。
しかしこの物置は、直接訪れると、そこで直接「置いてあるもの(ファイルやフォルダ)」を見ることができます。
あとがき
いかがでしたか?
なかなか使わない機能……っていうより「存在も知らんがな」って感じの機能ですよね(笑)
でも知っておくと便利なときがやってくるかもしれません!
現にgit使えない場所を、gitで管理できるようになったし!
「これ使ったらアレもこういうことできないかな?」
というのを是非考えてみてください!
見つけて実現できたら儲けもんです(笑)