- Command Reference for Windows Subsystem for Linux
- Set WSL 2 as your default version
- Set your distribution version to WSL 1 or WSL 2
- wsl.exe
- Arguments for running Linux commands
- Arguments for managing Windows Subsystem for Linux
- Additional Commands
- wslconfig.exe
- Arguments
- bash.exe
- Справочные материалы по командам подсистемы Windows для Linux Command Reference for Windows Subsystem for Linux
- Задать WSL 2 в качестве версии по умолчанию Set WSL 2 as your default version
- Установите вашу версию дистрибутива на WSL 1 или WSL 2 Set your distribution version to WSL 1 or WSL 2
- wsl.exe
- Аргументы для выполнения команд Linux Arguments for running Linux commands
- Аргументы для управления подсистемой Windows для Linux Arguments for managing Windows Subsystem for Linux
- Дополнительные команды Additional Commands
- wslconfig.exe
- Аргументы Arguments
- bash.exe
- Как выполнять Linux-команды внутри Windows: официальный и сторонние способы
- Содержание
- WSL — официальная подсистема Linux внутри Windows
- CoreUtils — лёгкий инструмент для запуска базовых команд
- Cygwin — запуск команд и Bash-скриптов
Command Reference for Windows Subsystem for Linux
The best way to interact with the Windows Subsystem for Linux is to use the wsl.exe command.
Set WSL 2 as your default version
Run the following command in Powershell to set WSL 2 as the default version when installing a new Linux distribution:
If you’re running a 32-bit process in order to access wsl.exe (a 64-bit tool), you may have to run the above command in the following manner: C:\Windows\Sysnative\wsl.exe —set-default-version 2
Set your distribution version to WSL 1 or WSL 2
You can check the WSL version assigned to each of the Linux distributions you have installed by opening the PowerShell command line and entering the command (only available in Windows Build 19041 or higher): wsl -l -v
To set a distribution to be backed by either version of WSL please run:
Make sure to replace with the actual name of your distribution and with the number ‘1’ or ‘2’. You can change back to WSL 1 at anytime by running the same command as above but replacing the ‘2’ with a ‘1’.
Additionally, if you want to make WSL 2 your default architecture you can do so with this command:
This will set the version of any new distribution installed to WSL 2.
wsl.exe
Below is a list containing all options when using wsl.exe as of Windows Version 1903.
Using: wsl [Argument] [Options. ] [CommandLine]
Arguments for running Linux commands
Without arguments
If no command line is provided, wsl.exe launches the default shell.
—exec, -e
Execute the specified command without using the default Linux shell.
Pass the remaining command line as is.
The above commands also accept the following options:
—distribution, -d
Run the specified distribution.
—user, -u
Run as the specified user.
Arguments for managing Windows Subsystem for Linux
—export
Exports the distribution to a tar file. The filename can be — for standard output.
—import
Imports the specified tar file as a new distribution. The filename can be — for standard input.
—list, -l [Options]
—all
List all distributions, including distributions that are currently being installed or uninstalled.
—running
List only distributions that are currently running.
—set-default, -s
Sets the distribution as the default.
—terminate, -t
Terminates the specified distribution.
—unregister
Un-register the distribution.
—help Display usage information.
Additional Commands
There are also historic commands to interact with the Windows Subsystem for Linux. Their functionality is encompassed within wsl.exe , but they are still available for use.
wslconfig.exe
This command lets you configure your WSL distribution. Below is a list of its options.
Using: wslconfig [Argument] [Options. ]
Arguments
/l, /list [Options]
Lists registered distributions.
/all Optionally list all distributions, including distributions that are currently being installed or uninstalled.
/running List only distributions that are currently running.
/s, /setdefault Sets the distribution as the default.
/t, /terminate Terminates the distribution.
/u, /unregister Un-registers the distribution.
/upgrade Upgrades the distribution to the WslFs file system format.
bash.exe
This command is used to start a bash shell. Below are the options you can use with this command.
Using: bash [Options. ]
No Option given
Launches the Bash shell in the current directory. If the Bash shell is not installed automatically runs lxrun /install
launches the bash shell into the user’s home directory. Similar to running cd
-c » «
Runs the command, prints the output and exits back to the Windows command prompt.
Справочные материалы по командам подсистемы Windows для Linux Command Reference for Windows Subsystem for Linux
Лучший способ взаимодействовать с подсистемой Windows для Linux — использовать команду wsl.exe . The best way to interact with the Windows Subsystem for Linux is to use the wsl.exe command.
Задать WSL 2 в качестве версии по умолчанию Set WSL 2 as your default version
Выполните следующую команду в PowerShell, чтобы задать WSL 2 в качестве версии по умолчанию при установке нового дистрибутива Linux: Run the following command in Powershell to set WSL 2 as the default version when installing a new Linux distribution:
Установите вашу версию дистрибутива на WSL 1 или WSL 2 Set your distribution version to WSL 1 or WSL 2
Вы можете проверить версию WSL, назначенную каждому из установленных дистрибутивов Linux, открыв командную строку PowerShell и введя команду (доступна только в сборке Windows 19041 или более поздней версии): wsl -l -v . You can check the WSL version assigned to each of the Linux distributions you have installed by opening the PowerShell command line and entering the command (only available in Windows Build 19041 or higher): wsl -l -v
Чтобы настроить дистрибутив для одной из версий WSL, выполните: To set a distribution to be backed by either version of WSL please run:
Не забудьте заменить на фактическое имя дистрибутива и с номером «1» или «2». Make sure to replace with the actual name of your distribution and with the number ‘1’ or ‘2’. Вы можете всегда вернуться к WSL версии 1, выполнив эту команду и заменив «2» на «1». You can change back to WSL 1 at anytime by running the same command as above but replacing the ‘2’ with a ‘1’.
Кроме того, если вы хотите сделать WSL 2 архитектурой по умолчанию, выполните следующую команду: Additionally, if you want to make WSL 2 your default architecture you can do so with this command:
Будет установлена версия любого нового дистрибутива, установленного в WSL 2. This will set the version of any new distribution installed to WSL 2.
wsl.exe
Ниже приведен список, содержащий все параметры wsl.exe при использовании в Windows версии 1903. Below is a list containing all options when using wsl.exe as of Windows Version 1903.
Использование: wsl [Argument] [Options. ] [CommandLine] Using: wsl [Argument] [Options. ] [CommandLine]
Аргументы для выполнения команд Linux Arguments for running Linux commands
Без аргументов Without arguments
Если командная строка не указана, wsl.exe запускает оболочку по умолчанию. If no command line is provided, wsl.exe launches the default shell.
—exec, -e —exec, -e
Выполнение указанной команды без использования оболочки Linux по умолчанию. Execute the specified command without using the default Linux shell.
Остальная часть командной строки передается «как есть». Pass the remaining command line as is.
Приведенные выше команды также принимают следующие параметры. The above commands also accept the following options:
—distribution, -d —distribution, -d
Запуск указанного дистрибутива. Run the specified distribution.
—user, -u —user, -u
Выполнение от имени указанного пользователя. Run as the specified user.
Аргументы для управления подсистемой Windows для Linux Arguments for managing Windows Subsystem for Linux
—export —export
Экспорт дистрибутива в TAR-файл. Exports the distribution to a tar file. Именем файла может быть «-» для стандартного вывода. The filename can be — for standard output.
—import —import
Импорт указанного TAR-файла в качестве нового дистрибутива. Imports the specified tar file as a new distribution. Именем файла может быть «-» для стандартного ввода. The filename can be — for standard input.
—list, -l [параметры] —list, -l [Options]
Вывод списка дистрибутивов. Lists distributions.
—all —all
Вывод списка всех дистрибутивов, включая дистрибутивы, которые сейчас устанавливаются или удаляются. List all distributions, including distributions that are currently being installed or uninstalled.
—running —running
Вывод списка всех дистрибутивов, выполняемых в данный момент. List only distributions that are currently running.
—set-default, -s —set-default, -s
Указание дистрибутива, используемого по умолчанию. Sets the distribution as the default.
—terminate, -t —terminate, -t
Завершение указанного дистрибутива. Terminates the specified distribution.
—unregister —unregister
Отмените регистрацию дистрибутива. Un-register the distribution.
—help отображает сведения об использовании. —help Display usage information.
Дополнительные команды Additional Commands
Доступны также устоявшиеся команды для взаимодействия с подсистемой Windows для Linux. There are also historic commands to interact with the Windows Subsystem for Linux. Их функциональные возможности реализованы в wsl.exe , но эти команды по-прежнему можно использовать. Their functionality is encompassed within wsl.exe , but they are still available for use.
wslconfig.exe
Эта команда позволяет настроить дистрибутив WSL. This command lets you configure your WSL distribution. Ниже приводится список ее параметров. Below is a list of its options.
Использование: wslconfig [Argument] [Options. ] Using: wslconfig [Argument] [Options. ]
Аргументы Arguments
/l, /list [параметры] /l, /list [Options]
Вывод списка зарегистрированных дистрибутивов. Lists registered distributions.
/all Дополнительный вывод списка всех дистрибутивов, включая дистрибутивы, которые сейчас устанавливаются или удаляются. /all Optionally list all distributions, including distributions that are currently being installed or uninstalled.
/running Вывод списка всех дистрибутивов, выполняемых в данный момент. /running List only distributions that are currently running.
/s, /setdefault Задание дистрибутива, используемого по умолчанию. /s, /setdefault Sets the distribution as the default.
/t, /terminate Завершение работы дистрибутива. /t, /terminate Terminates the distribution.
/u, /unregister Отмена регистрации дистрибутива. /u, /unregister Un-registers the distribution.
/upgrade Обновление дистрибутива до файловой системы WslFs. /upgrade Upgrades the distribution to the WslFs file system format.
bash.exe
Эта команда используется для запуска оболочки Bash. This command is used to start a bash shell. Ниже приведены параметры, которые можно использовать с этой командой. Below are the options you can use with this command.
Использование: bash [Options. ] Using: bash [Options. ]
Параметр не задан No Option given
Запуск оболочки Bash в текущем каталоге. Launches the Bash shell in the current directory. Если оболочка Bash не установлена, автоматически запускается lxrun /install . If the Bash shell is not installed automatically runs lxrun /install
запускает оболочку Bash в корневом каталоге пользователя. bash
launches the bash shell into the user’s home directory. Это аналог команды cd
. Similar to running cd
-c -c » «
Выполнение команды, вывод выходных данных и возврат в командную строку Windows. Runs the command, prints the output and exits back to the Windows command prompt.
Пример: bash -c «ls» . Example: bash -c «ls» .
Как выполнять Linux-команды внутри Windows: официальный и сторонние способы
Под GNU/Linux-дистрибутивы создано огромное количество полезных и удобных инструментов и приложений для обычных пользователей и разработчиков. Далеко не всё из этого доступно на Windows, но, к счастью, для ОС от Microsoft есть решения, исправляющие эту проблему.
Содержание
WSL — официальная подсистема Linux внутри Windows
В Windows 10 существует крайне полезная вещь под названием Windows Subsystem for Linux (WSL). Она позволяет использовать GNU/Linux-среду прямо в Windows и запускать не только команды, но и, например, Bash-скрипты. Для использования WSL необходимо следовать инструкции ниже.
Шаг 1. Проверьте, подходит ли текущая версия Windows требованиям. Для этого нажмите сочетание клавиш Win+R, затем введите winver. Найдите строку «Сборка ОС» — она должна быть свежее версии 14316.
Шаг 2. Запустите стандартную утилиту PowerShell от имени администратора и введите в ней команду для включения WSL:
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
Шаг 3. Если версия Windows, определённая в первом пункте, свежее 18362, вы можете установить WSL 2, который в разы быстрее первой версии и обладает доработанным ядром. Введите команду ниже, если нужно установить WSL 2:
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
После этого скачайте и установите пакет обновления с официального сайта.
Шаг 4. Перезагрузите компьютер. Если была произведена установка WSL 2, введите в PowerShell от имени администратора следующую команду:
Шаг 5. После перезагрузки откройте фирменный магазин приложений Microsoft Store и найдите подходящий GNU/Linux-дистрибутив. Самым популярным является Ubuntu — вы можете установить любую версию из представленных в Microsoft Store.
Шаг 6. Как только установка завершится, найдите дистрибутив в меню «Пуск» и запустите его.
Шаг 7. Пройдите этап первоначальной настройки, введя имя нового пользователя и придумав пароль.
Шаг 8. Теперь различные GNU/Linux-команды можно выполнять, запустив дистрибутив, либо введя в командной строке wsl . Например, для просмотра всех файлов в текущей директории достаточно в командной строке выполнить wsl ls -a.
Обращу внимание на то, что путь к дискам в WSL отличается от такового в Windows. Вместо привычного C:/ используйте /mnt/c/. Также не забывайте про экранирование пробелов с помощью символа \ — это также пригодится при вводе путей к файлам.
Помимо выполнения базовых команд, с помощью WSL можно даже запускать приложения с графическим интерфейсом. Правда, рассчитывать на большое количество поддерживаемых подобных программ не стоит.
Шаг 1. Загрузите X-сервер и установите его.
Шаг 2. Запустите его с помощью ярлыка на рабочем столе. В открывшемся окне выберите вариант Multiple windows, затем Start no client. Завершите настройку кнопкой Finish.
Шаг 3. Откройте дистрибутив через меню Пуск и выполните команду export DISPLAY=:0
Шаг 4. Запустив приложение с графическим интерфейсом в WSL, вы увидите новое окно прямо в Windows.
CoreUtils — лёгкий инструмент для запуска базовых команд
Плюс данной утилиты — возможность запуска не только на Windows 10, но и на более старых версиях ОС. Кроме того, она легка и не занимает много места. Не обошлось без недостатков — программа скудна на функционал и не обновлялась очень давно. Она не только не умеет запускать скрипты и приложения с GUI, но и поддерживает лишь самые базовые GNU/Linux-команды. Установка CoreUtils весьма проста.
Шаг 1. Скачайте утилиту с официального сайта.
Шаг 2. Следуйте инструкциям установщика.
Шаг 3. Откройте «Панель управления», в разделе «Система и безопасность» выберите пункт «Система». На панели слева откройте «Дополнительные параметры системы». Нажмите кнопку «Переменные среды» и в открывшемся окне найдите область с заголовком «Системные переменные». В случае, когда там есть переменная Path, выберите её, нажмите «Изменить» и далее создайте новую строку. Содержимым этой строки должен быть путь к папке, который был указан при установке. Если вы ничего не меняли, то введите следующее:
Переменной Path нет? Тогда для начала создайте её кнопкой «Создать», затем в поле имени введите Path, а в поле значения — строку выше.
Шаг 4. Запустите командную строку и выполняйте команды прямо там.
Cygwin — запуск команд и Bash-скриптов
Ещё одна утилита, схожая с CoreUtils, но обладающая более широким функционалом — в том числе и возможностью запуска скриптов. Из минусов — немалый вес и более сложная установка. Разумеется, не идёт ни в какое сравнение с максимально удобным WSL, но для базовых команд вполне подойдёт.
Шаг 1. Загрузите Cygwin и запустите установку.
Шаг 2. Выберите Install from Internet, укажите директории для установки и загрузки пакетов, а также любой подходящий сайт из списка для скачивания файлов.
Шаг 3. В процессе установки можете выбрать необходимые пакеты, либо сразу нажать «Далее», оставив базовый набор.
Шаг 4. Откройте «Панель управления», в разделе «Система и безопасность» выберите пункт «Система». На панели слева откройте «Дополнительные параметры системы». Нажмите кнопку «Переменные среды» и в открывшемся окне найдите область с заголовком «Системные переменные». В случае, когда там есть переменная Path, выберите её, нажмите «Изменить» и далее создайте новую строку. Содержимым этой строки должен быть путь к папке, который был указан при установке. Если вы ничего не меняли, то введите следующее:
Переменной Path нет? Тогда для начала создайте её кнопкой «Создать», затем в поле имени введите Path, а в поле значения — строку выше.
Шаг 5. Команды можно выполнять как через командную строку, так и через специальный терминал.
Шаг 6. Для удаления Cygwin достаточно удалить папку, в которую программа была установлена, а также (по желанию) значение из переменной Path по методу, обратному тому, что был описан в 4 шаге (не удаляйте саму переменную).