微软于 2018 年 11 月 13 日正式更新发布了 Windows 10 Version 1809 第二版,在该版本系统对 WSL 功能进行了诸多更新和改进,下面系统极客就为大家汇总介绍 Windows 10 Version 1809 之 WSL 新特性和改进汇总。
新增 Linux 发行版支持
在 Windows 10 Version 1809 中,WSL 新增了对新款 Linux 发行版的支持,用户可以直接通过 Microsoft Store 下载安装。
- Ubuntu 18.04 Ubuntu 18.04 LTS 已经正式发布到 Microsoft Store。
- WLinux 您现在也可以通过 Microsoft Store 安装 WLinux。 WLinux 是首款可用于 WSL 的付费 Linux 发行版,它允许用户轻松设置常见的开发人员工具链,并移除了一些功能(如 systemd)。
- OpenSUSE 15 和 SLES 15 OpenSUSE 15 和 SLES 15 这两个更新版本现在也可通过 Microsoft Store 安装使用。
对于如何在 Windows 10 中正确安装各种 Linux 发行版,大家可以参考老文章。
支持在 ARM 设备的 WSL 中运行 Ubuntu 18.04
Windows 10 Version 1809 支持在 ARM 设备的 WSL 中运行 Ubuntu 18.04 系统。当您从 Microsoft Store 中获取 Ubuntu 18.04 系统时,如果检测到当前正在使用 ARM 设备,则会自动获取 ARM 版本的应用程序。更多信息可以参考 Windows 10 for ARM Developers相关主题。
「记事本」程序支持 Linux 结尾分行
此前在「记事本」应用中打开 Linux 文本文件后是不会自动分行的,所有内容都混杂在一起。至 Windows 10 Version 1809 开始,「记事本」应用程序可以自动判断 Linux 文本的结尾处,并进行自动分行处理。该功能的相关细节和工作原理请参考 Extended Line Endings Support in Notepad。
从文件资源管理器启动 Linux Shell
微软在右键菜单中新增了一个「在此处打开 Linux shell」选项,可以直接从文件资源管理器启动 Linux Shell。您可以 Shift + 右键单击来查看菜单:
选择「在此处打开 Linux shell」就可以直接在该路径中启动默认 Linux 发行版:
使用命令行安装 Linux 发行版
在配置一台新 Windows 10 PC 时,或者想以编程方式定义您的开发机器而不中断命令行工作流程时,无论哪种需求,您都有可能需要通过脚本方式来以命令行安装 Linux 发行版。
如果有此需求,则可以通过 Windows Developer 设置脚本来启用 WSL(以及许多其他功能和工具),并一键安装所需 Linux 发行版。
以下是如何执行此类操作的示例,脚本应在 PowerShell 管理员终端中运行。
启用 WSL
Invoke-WebRequest -Uri https://aka.ms/wsl-ubuntu-1804 -OutFile ~/Ubuntu.appx -UseBasicParsing Add-AppxPackage -Path ~/Ubuntu.appx
安装 Ubuntu 18.04
Ubuntu1804 install --root Ubuntu1804 run apt update Ubuntu1804 run apt upgrade -y
使用 chocolatey 和 boxstarter 的 Dev Box 设置脚本
在 Build 2018 大会上,微软宣布了与 Chocolately 和 Boxstarter 合作的开源项目,只需点击一下即可设置您的 Dev Box。你可以通过 Join us for a hot cup o Chocolatey 博文了解这项工作,若想通过该项目设置你的 Dev Box,可以访问 Dev Setup GitHub。
改进文件夹「大小写敏感」支持
在 Windows 10 Version 1809 中,微软根据用户反馈对大小写敏感支持进行了一些改进。默认情况下,在 WSL 中创建新目录时,会区分大小写。现在还可以从 WSL 内部查看和修改目录区分大小写的「标志」,而且在创建新目录时会继承区分大小写的设定。 您可以在此博文中阅读有关区分大小写支持的更多信息。
复制/粘贴到 Linux/WSL 控制台
您现在可以使用 Ctrl + Shift + C/V 在 WSL 控制台中进行复制和粘贴操作:
控制台改进
Windows 10 Version 1809 除了对 WSL 的直接改进之外,还对 Windows 控制台发布了一系列改进:
- 可以在 tmux 和屏幕中托管 Windows 应用程序,而不会破坏 Windows 的其余部分
- 改进了支持的 VT 序列的范围
- 添加 ConPTY API 和基础架构,以方便第三方能够更轻松地构建终端和服务器
如果你想了解有关控制台的更多背景资料,可以参考 Windows Command-Line: Backgrounder 一文。