Как запустить терминал WSL в текущем каталоге powershell? - PullRequest
1 голос
/ 06 апреля 2020

Я могу открыть PowerShell и набрать

> Ubuntu 

, чтобы открыть оболочку WSL ubuntu на windows 10. Это всегда приведет меня в домашний каталог WSL. Как бы я вместо этого открыл терминал в том же месте, где сейчас находится PowerShell?

К вашему сведению. Мне это нужно для создания правого клика «открыть терминал» типа регистрационного ключа для windows explorer.

1 Ответ

1 голос
/ 07 апреля 2020

Если мы посмотрим на то, что на самом деле выполняет ubuntu.exe:

PS C:\> ubuntu.exe /?
Launches or configures a Linux distribution.

Usage:
    <no args>
        Launches the user's default shell in the user's home directory.

    install [--root]
        Install the distribuiton and do not launch the shell when complete.
          --root
              Do not create a user account and leave the default user set to root.

    run <command line>
         Run the provided command line in the current working directory. If no
         command line is provided, the default shell is launched.

    config [setting [value]]
        Configure settings for this distribution.
        Settings:
          --default-user <username>
              Sets the default user to <username>. This must be an existing user.

    help
        Print usage information.

Мы увидим, что по умолчанию он запускает оболочку WSL внутри home directory . Если мы хотим запустить его внутри текущего каталога, открытого в PowerShell, нам нужно указать параметр run. Таким образом, полная команда будет ubuntu.exe run.

Другой вариант - просто запустить wsl.exe или bash.exe. Эти команды по умолчанию откроют WSL в текущем рабочем каталоге.

Примечание: Нам не нужно указывать .exe после команд. Запуск ubuntu, wsl и bash также работает. PowerShell знает, как запускать исполняемые файлы без указания расширения.

...