WSL2でシンボリックリンクしたディレクトリはWindows側からはファイルに見える
2024/04/14
私がWSL2を使う場合はコンソールからかVisual Studio Code経由が多いのだが、ちょっとファイルを見たいだけならエクスプローラを使って直接見ることもある。
パスはUNCで\\wsl.localhost\Ubuntu\home
のような感じになっているのだが、WSL2でシンボリックリンクしているファイルやディレクトリにはそれが使えない。
私の場合、VHDファイルをwsl2.exe --mount --vhd
でマウントしているのだが、マウントしたパスは--name
で名前での指定しかできないようだ。マウント先は/mnt/wsl/<名前>
になるようなのだ。
/home
の下で使いたいのでシンボリックリンクしているのだが、自動的にエクスプローラでたどってくれないのでそうなるのだった。
まあ、それくらい仕方ないと思っているのでよいのだけどね。。。
HTMLファイルに結果が出力されるのでブラウザで見たいというだけなのだ。vscodeだとちょっと見栄えが違うのでブラウザで開きたいのよね。
ただ、explorer.exe .
のようにするとカレントディレクトリが見える状態でエクスプローラが立ち上がってくれて、それがシンボリックリンクしたフォルダであっても自動的に/mnt/wsl
以下にあるディレクトリが開いてくれた。
だからそこまで困るものではないのだった。
そして今気付いたが、Visual Studio Codeはcode .
で自動的にWindowsのVisual Studio Codeがカレントディレクトリで開いてくれた。
エクスプローラはexplorer
ではなくexplorer.exe
じゃないと起動しないのでそういうものだと思っていたのだが、スクリプトでうまいことやっているようだ。
$ which code
/mnt/c/Program Files/Microsoft VS Code/bin/code
$ which explorer
$