WindowsターミナルとUbuntuの両方をWindows 10内のMicrosoft Storeからインストールしました(これがWSLバージョン1であるかバージョン2であるかはわかりません。wsl -l -v
コマンドは失敗しました)。
デフォルトのディレクトリは正しいディレクトリに設定されていますが、常にルートまで開かれています。この構成を修正するにはどうすればよいですか?
これは、Windowsターミナルの MicrosoftターミナルのGitHubページ で wslプロファイル#592のstartingDirectory設定の問題 として発生する問題です。そして 物事を尊重しない は物事の趣味です。
実際、startingDirectory
Windowsターミナルは、WSL fsパスの下では$HOME
に固有の問題ではないため、/
のすべてのフォルダーに存在するため、うまく機能しないようです。
ser3140225のアプローチ は良いスタートですが、 DHowett-MSFTのコメント によると:
これは、マシンでbashを使用する他のすべてのもので奇妙で予期しない動作をするための優れた方法でもあります。 ????
Ubuntuのプロファイルでは、コマンドラインwsl.exe -d Ubuntu
を指定しています。このコマンドラインはWSLを呼び出し、現在のディレクトリで実行される「Ubuntu」を開始するように要求します。つまり、Windowsのデスクトップでwsl.exe -d Ubuntu
を実行すると、UbuntuはWindowsのデスクトップで開始されます。
回避策として、コマンドラインを変更して、以下のいずれかを使用できます。
WSLは特にLinux用であるため、 Tilde Expansion が期待できます。したがって、コマンドラインで「開始ディレクトリ」を指定し、コマンドラインの値として次を使用できます。
wsl.exe ~ -d ubuntu
Ubuntuアプリをインストールすると、ubuntu
コマンドが自動的に登録されます。したがって、ubuntu
コマンドはUbuntuアプリを呼び出します。これの利点は、常に$HOME
から始まることです。したがって、コマンドラインの値を次のように変更できます。
ubuntu
注:Ubuntu 18.04または16.04アプリを使用している場合、コマンドはそれに応じて異なります。上記は、Ubuntuアプリ専用です。
コマンドラインの変更に不安がある場合でも、startDirectory
を次のように変更することで機能させることができます。
"startingDirectory":"//wsl$/Ubuntu/home/jake/"
クレジット:caksoylarのコメント
WSLを開き、cd
をホームディレクトリに開きます。
cd ~
次に、nano
を使用して.bashrc
ファイルを編集します。
nano .bashrc
ファイルの下部に次の行を追加します。
cd ~
最後に、WSLを再起動します。