- PVSM.RU - https://www.pvsm.ru -
Я глубоко погружен в WSL (Windows Subsystem для Linux), и теперь, когда WSL2 [1] доступен в Windows Insiders [2], это отличное время, чтобы по-настоящему изучить доступные опции. Очень интересная фича, которую я нашел в WSL, — возможность «чисто» перемещать данные между мирами. Это не тот опыт, который вы легко можете получить с полноценными виртуальными машинами, и он говорит о тесной интеграции Linux и Windows.
Под катом подробнее о некоторых интересных вещах, которые вы можете делать, смешивая арахисовое масло и шоколад!

Когда вы находитесь в командной строке WSL / bash и хотите получить визуальный доступ к своим файлам, вы можете запустить «explorer.exe .», где находится текущий каталог, и вы получите окно проводника Windows, в котором ваши файлы Linux будут доставлены вам через сервер локальной сети plan9.

Я уже писал об этом раньше, но теперь есть алиасы для функций PowerShell, которые позволяют вам использовать настоящие команды Linux [3] изнутри Windows.
Вы можете вызвать любую команду Linux напрямую из DOS/Windows/чего угодно, просто поместив ее после WSL.exe, вот так.
C:temp> wsl ls -la | findstr "foo"
-rwxrwxrwx 1 root root 14 Sep 27 14:26 foo.bat
C:temp> dir | wsl grep foo
09/27/2016 02:26 PM 14 foo.bat
C:temp> wsl ls -la > out.txt
C:temp> wsl ls -la /proc/cpuinfo
-r--r--r-- 1 root root 0 Sep 28 11:28 /proc/cpuinfo
C:temp> wsl ls -la "/mnt/c/Program Files"
...contents of C:Program Files...
Исполняемые файлы Windows можно вызывать/запускать из WSL/Linux, поскольку путь к Windows находится в $PATH до Windows. Все, что вам нужно сделать, это явно вызвать его с .exe в конце. Вот как работает «Explorer.exe.». Вы также можете сделать notepad.exe или любой другой файл.
Вы можете запустить «code.», находясь в папке в WSL, и вам будет предложено установить расширения VS Remote. [4]. Это эффективно разделяет Visual Studio Code пополам и запускает «headless» VS Code Server в Linux с клиентом VS Code в мире Windows.
Вам также необходимо установить Visual Studio Code [5] и расширение Remote — WSL [6]. При желании, установите бета-версию Windows Terminal [7] для лучшего опыта работы с терминалом в Windows.
Вот отличная подборка статей из блога Windows Command Line.
Вот преимущества WSL 2
Здесь я использую «wsl --list --all», и в моей системе уже есть три Linux.
C:Usersscott>wsl --list --all
Windows Subsystem for Linux Distributions:
Ubuntu-18.04 (Default)
Ubuntu-16.04
Pengwin
Я могу легко запустить их, а также назначить профили, чтобы они появлялись в моем Windows Terminal.
Pengwin [11] -- это специальный Linux-дистрибутив WSL, который очень крут. Вы можете получить его в Windows Store [12]. Объедините Pengwin с X Server, например X410 [13], и вы получите очень классную интегрированную систему.
Ana Betts отмечает эту замечательную технику [14], с помощью которой вы можете легко перенести свой идеальный дистрибутив WSL2 с одной машины на n машин.
wsl --export MyDistro ./distro.tar
# разместите его где-нибудь, Dropbox, Onedrive, где-то еще
mkdir ~/AppData/Local/MyDistro
wsl --import MyDistro ~/AppData/Local/MyDistro ./distro.tar --version 2
Вот и все. Получите идеальную настройку Linux, синхронизированную на всех ваших системах.
Все перечисленные фичи переткают в кульминацию в этом крутом посте от Ana Betts [15], где она интегрирует Windows Git Credential Provider в WSL [15], превращая /usr/bin/git-credential-manager в сценарий оболочки, который вызывает диспетчер git creds Windows. Гениально. Это было бы возможно только при условии чистой и тесной интеграции.
Пробуйте, устанавливайте WSL, Windows Terminal [16], и создавайте блестящую среду Linux на Windows. [17].
Автор: Александр Гуреев
Источник [18]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/linux/337435
Ссылки в тексте:
[1] WSL2: https://www.hanselman.com/blog/RubyOnRailsOnWindowsIsNotJustPossibleItsFabulousUsingWSL2AndVSCode.aspx
[2] Windows Insiders: https://insider.windows.com/
[3] которые позволяют вам использовать настоящие команды Linux: https://www.hanselman.com/blog/AWonderfullyUnholyAllianceRealLinuxCommandsForPowerShellWithWSLFunctionWrappers.aspx
[4] расширения VS Remote.: https://code.visualstudio.com/blogs/2019/09/03/wsl2?WT.mc_id=-blog-scottha
[5] Visual Studio Code: https://code.visualstudio.com/download?WT.mc_id=-blog-scottha
[6] расширение Remote — WSL: https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-wsl&WT.mc_id=-blog-scottha
[7] бета-версию Windows Terminal: https://www.microsoft.com/p/windows-terminal-preview/9n0dx20hk701?WT.mc_id=-blog-scottha
[8] Поднимите опыт разработки Linux под Windows на новый уровень с помощью WSL и Visual Studio Code Remote.: https://devblogs.microsoft.com/commandline/take-your-linux-development-experience-in-windows-to-the-next-level-with-wsl-and-visual-studio-code-remote/?WT.mc_id=-blog-scottha
[9] Углубленное руководство по разработке Linux для Windows с WSL и Visual Studio Code: https://devblogs.microsoft.com/commandline/an-in-depth-tutorial-on-linux-development-on-windows-with-wsl-and-visual-studio-code/?WT.mc_id=-blog-scottha
[10] Советы и рекомендации по разработке Linux с использованием WSL и Visual Studio Code: https://devblogs.microsoft.com/commandline/tips-and-tricks-for-linux-development-with-wsl-and-visual-studio-code/?WT.mc_id=-blog-scottha
[11] Pengwin: https://www.pengwin.dev/
[12] Windows Store: https://afflnk.microsoft.com/c/1291904/433017/7593?u=https%3A%2F%2Fwww.microsoft.com%2Fen-us%2Fp%2Fwlinux%2F9nv1gv1pxz6p&WT.mc_id=-blog-scottha
[13] X Server, например X410: https://www.bing.com/rebates/welcome?url=https%3a%2f%2fwww.microsoft.com%2fen-us%2fp%2fx410%2f9nlp712zmn9q&murl=http%3a%2f%2fclick.linksynergy.com%2fdeeplink%3fid%3dmsYS1Nvjv4c%26afsrc%3d1%26mid%3d24542%26murl%3dhttps%253a%252f%252fwww.microsoft.com%252fen-us%252fp%252fx410%252f9nlp712zmn9q%26u1%3d&id=Microsoft&ra=8%&hash=1b8c84b51e92d8f9b2be366b93a65d2e093ee6ef2f98f699b82b26d8d905970b
[14] Ana Betts отмечает эту замечательную технику: https://twitter.com/anaisbetts/status/1194386477855019008
[15] в этом крутом посте от Ana Betts: https://blog.anaisbetts.org/using-github-credentials-in-wsl2/
[16] Windows Terminal: https://www.hanselman.com/blog/HowToMakeAPrettyPromptInWindowsTerminalWithPowerlineNerdFontsCascadiaCodeWSLAndOhmyposh.aspx
[17] блестящую среду Linux на Windows.: https://www.hanselman.com/blog/SettingUpAShinyDevelopmentEnvironmentWithinLinuxOnWindows10.aspx
[18] Источник: https://habr.com/ru/post/476026/?utm_source=habrahabr&utm_medium=rss&utm_campaign=476026
Нажмите здесь для печати.