試した環境
本題
Windows Terminal v1.12以降では設定で WSL2 の Ubuntu の開始ディレクトリにチルダ~
が指定できるようになったみたいです。
Windows Terminal の WSL2 の Ubuntu ではデフォルト設定での開始ディレクトリが Windows のホームディレクトリになっているので、開始ディレクトリを Ubuntu のホームディレクトリにしたければ Windows Terminal の設定を変更しなければなりません。
よく紹介されている方法として、開始ディレクトリに//wsl$/Ubuntu/home/ユーザー名
を指定する方法や、settings.json ファイルに"startingDirectory": "//wsl$/Ubuntu/home/ユーザー名"
を指定する方法があります。
ちなみに私が以前使用していたバージョンでは、区切りをスラッシュではなくバックスラッシュで指定しないとなりませんでした。
バックスラッシュでの指定ではエスケープが必要なので、"startingDirectory": "\\\\wsl$\\Ubuntu\\home\\ユーザー名"
となります。
先ほどのスラッシュ区切りでの指定では Ubuntu のホームディレクトリではなくルートディレクトリ/
から開始するようになってしまっていました。
問題が発生したバージョンでの状況を再現できなくて申し訳ないのですが、設定の開始ディレクトリに Ubuntu のホームディレクトリを表すチルダ~
を設定すると、無効な値の旨のメッセージが出ていたと記憶しています。
それが現在のバージョンの Windows Terminal では無くなり、"startingDirectory": "~"
でホームディレクトリから開始できるようになりました。
Windows Terminal v1.12.10334.0 のリリースノートの以下の記述に該当するでしょう。
- //wsl$ paths will no longer result in you being unceremoniously dumped in / (in WSL) (#12102)
- ~ now works as a starting directory for wsl.exe (#12050) (thanks @LuanVSO!)
参考
Release Windows Terminal v1.12.10334.0 · microsoft/terminal · GitHub
Release Windows Terminal v1.12.10393.0 · microsoft/terminal · GitHub