開発マシンのストアからLinuxおよびUbuntuのサブシステムをインストールするとき、Ubuntu Shellに切り替える(または開始する)だけで済みます
しかし、Ubuntu Shellは/home/techsupp
フォルダーはデフォルトです。 Ubuntu
コマンドを使用するフォルダーと同じフォルダーで強制的に起動することは可能ですか?
だから私の例では
/mnt/h
ありがとうございました。
私がすでに試したこと:
H:\>ubuntu help
Launches or configures a linux distribution.
Usage:
<no args>
- Launches the distro's default behavior. By default, this launches your default Shell.
run <command line>
- Run the given command line in that distro, using the default configuration.
- Everything after `run ` is passed to the linux LaunchProcess call.
config [setting [value]]
- Configure certain settings for this distro.
- Settings are any of the following (by default)
- `--default-user <username>`: Set the default user for this distro to <username>
clean
- Uninstalls the distro. The appx remains on your machine. This can be
useful for "factory resetting" your instance. This removes the linux
filesystem from the disk, but not the app from your PC, so you don't
need to redownload the entire tar.gz again.
help
- Print this usage message.
また、uservoiceでこのリクエストを発見します: https://wpdev.uservoice.com/forums/266908-command-Prompt-console-windows-subsystem-for-l/suggestions/13421103-let-us-right- click-open-bash-here-from-explorer?tracking_code = 8a8bc624c72a8336565fcd6d5737d712
投票してください。
ubuntu run
<コマンドライン>を実行します
現在の作業ディレクトリで提供されたコマンドラインを実行します。ない場合
コマンドラインが提供され、デフォルトのシェルが起動します。
私が知る限り、効果はubuntu
を実行するのと同じですが、現在のディレクトリで開始する点が異なります。
このコマンドは、エクスプローラで右クリックしてここで開くコマンドとしても機能します。 この記事 からの適応:
HKEY_CLASSES_ROOT\Directory\Background\Shell
および新しいキーを作成します(Default)
から「ここでUbuntuを開く」などに変更します。command
という名前のキーを追加します(Default)
からubuntu run
これで、エクスプローラーで機能する「Open Ubuntu here」右クリックメニューができました。
wsl
の問題は、wsl bashウィンドウにUbuntuアイコンが表示されていないことです(Ubuntuディストリビューションを開始した場合でも)。
wsl.exe
を使用すると、現在のディレクトリでWSLが起動します。しかし、wsl
とubuntu
の違いは、2つ以上のディストリビューション(UbuntuとFedoraなど)をインストールした場合、デフォルトのディストリビューションが開始されることです。 wslconfig /setdefault Ubuntu
を実行して、デフォルトをUbuntuに設定できます。
参照:[1] https://docs.Microsoft.com/en-us/windows/wsl/wsl-config
この小さなスクリプトを使用すると、Powershellが現在あるディレクトリからすべてのコマンドを実行できます。ドライブがサブシステムの/ mnt /に既にマウントされている場合にのみ機能します。ネットワークリソースでは機能しません。
function Tux {$dl = (pwd).Path | wsl eval "cut -c 1 | tr 'A-Z' 'a-z'"; $wd = (pwd).Path | wsl eval "cut -d : -f 2 | tr '\\' '/' 2> /dev/null" ; wsl eval "cd '/mnt/$dl$wd' && eval '$args'"}
実行した後、次のように使用できます。
Tux vim test.txt