Windows Terminal 安装与多标签配置指南:提升命令行效率
我猜不少人跟我一样一天要在终端窗口里来回切换几十次。旧时代的 Windows 终端用起来是真的难受开几个 PowerShell、CMD 再连个 SSH任务栏里一堆窗口挤在一起靠 AltTab 来回找眼都快花掉了。微软也终于意识到这个问题推出了全新的 Windows 终端Windows Terminal直接把多标签、GPU 加速渲染、自定义配色方案这些现代终端该有的能力全部塞了进来。这篇文章就围绕 Windows 终端最新版本的安装、多标签使用和高阶配置做个完整梳理适合所有在用 Windows 做开发、运维、数据分析或者只是平时想有个顺手的命令行工具的朋友。标题里其实藏着不少信息量。有人说“安装 Windows 终端”不就一条命令的事吗但实际落地时你会发现版本怎么选、从哪下、装完怎么配、多标签怎么用才算高效这些才是拉开体验差距的地方。我尽量用通俗的方式把每一步讲透顺便附上平时踩坑总结出来的经验。1. 为什么现在值得装一个 Windows 终端先说清楚 Windows 终端到底解决了什么问题。以前的 Windows 命令行工具比如经典的 conhost就是承载 CMD 和 PowerShell 的那个黑窗口功能实在太原始了不支持多标签、不支持富文本、文本渲染慢、窗口大小调节不灵活更没有 GPU 加速这么一说。你用命令行连接远程服务器或者跑个日志监控稍微滚动快一点屏幕就各种闪烁。Windows 终端是微软开源的现代终端应用它的核心卖点概括起来就几个多标签页一个窗口里面同时开多个 Shell可以是 PowerShell、CMD、WSL、Azure Cloud Shell甚至是 SSH 连接切换非常方便。窗格分屏不只是标签页它还能在一个标签页里左右上下分成多个窗格相当于把终端窗口变成了一个小型的窗口管理器。GPU 加速文本渲染用 DirectWrite 和 DirectX 进行文本渲染大量日志刷新时滚动体验非常顺滑。完整的自定义能力配色方案、光标样式、背景图、透明度、快捷键绑定全部可以通过配置文件调节而且配置是 JSON 格式方便复制和版本管理。我个人的体会是多标签这个功能只要用上就回不去了。以前排查问题要开三四个黑窗口现在一个窗口里面开三个标签页一个跑日志、一个敲命令、一个连服务器用快捷键切换的成本极低工作效率提升非常明显。再说版本问题。Windows 终端从推出到现在迭代速度一直很快。最新的稳定版已经支持了很多好用功能比如全新的 AtlasEngine 文本渲染引擎更快的滚动速度、颜色方案实时预览、更完善的 Unicode 支持等等。Win11 系统更是直接把 Windows 终端设置为默认终端应用但 Win10 用户以及其他想要第一时间体验新特性的用户仍然需要自己安装最新版本。安装方式主要有三种微软商店一键安装、winget 命令行安装、GitHub 离线包手动部署。选哪种取决于你的使用场景下面展开讲。2. 安装前必须搞懂的几个版本概念在动手安装前先把版本和水印问题搞清楚不然很容易装完发现不是自己想要的。2.1 稳定版、预览版和开源版选哪个微软官方在分发 Windows 终端时有几个不同的“型号”Windows Terminal稳定版。功能经过充分测试适合日常使用。如果你不想折腾就认准这个名字。Windows Terminal Preview预览版。会提前加入一些新特性和实验性功能比如最早的窗格、鼠标支持、新渲染引擎等都是先在 Preview 版里出现。但预览版偶尔会有 Bug建议主力工作机器不要轻易尝试。Windows Terminal 的 GitHub 开源项目。源码完全开放如果你有定制需求可以自己编译但一般来说没必要自己构建直接用官方编译好的安装包即可。我在生产环境中只使用稳定版预览版主要用来尝鲜新特性。尤其涉及到公司电脑或者重要开发环境稳定压倒一切。2.2 系统要求和依赖环境Windows 终端本身要求 Windows 10 1809OS 内部版本 17763及以上操作系统。Win10 19041 或更高版本体验最佳因为一些新特性特别是新渲染引擎依赖较新的系统组件。它还需要安装 VC 运行库不过微软商店版本和 winget 版本都会自动处理依赖不用你操心。反而是通过 GitHub 离线包手动部署时我会在后面重点讲一下签入脚本的处理方法。还有一些特殊环境比如 Windows Server 或者离线内网环境微软商店不可用时离线包几乎是唯一选择。这也就是为什么我建议大家都了解一下离线包的安装方法有备无患。2.3 为什么推荐用 winget 而不是微软商店winget 是 Windows 自带的包管理器从几年前开始就已经非常成熟了。我推荐它的原因主要有三个命令简洁可以反复执行。输入一条命令自动下载、自动安装还能自动更新。版本透明可控。你可以指定安装版本也可以安装预览版。不依赖微软商店的图形界面。尤其是商店下载进度条卡住或者报错的时候winget 几乎是更好的替代方案。当然对于普通用户微软商店的“获取”按钮确实最省心它还会自动更新到最新版本。两种方式都可以下面分别给出实操流程。3. 三种安装方式实测记录下面是我在多种环境里实际安装过无数次的完整流程每种方式都附上注意点和坑位提示。3.1 微软商店安装方式这是最傻瓜的方式适合绝大多数人。按 Win 键输入“Microsoft Store”或“商店”打开微软商店。在商店右上角的搜索框里输入“Windows Terminal”。搜索结果里会看到两个同名应用一个是稳定版 Windows Terminal一个是 Windows Terminal Preview。点击进入稳定版详情页。点击“获取”或“安装”按钮等待下载安装完成。安装完成后开始菜单里会出现“终端”或 Windows Terminal的快捷方式。提示商店版会自动跟随系统更新相当于省去手动升级的烦恼。如果你在商店里遇到“0x80070005”之类的权限错误直接改用后面的 winget 或离线包方案别在商店里死磕。3.2 winget 命令行安装方式这个方法特别适合习惯键盘操作的开发者也适合在批量部署时使用。打开一个已有的终端窗口按 Win X选择“终端”或“Windows PowerShell”。先检查 winget 是否可用输入winget --version如果提示没有这个命令说明系统版本较旧或者 winget 没装好先从微软商店安装“应用安装程序”再回来执行。安装稳定版执行winget install --id Microsoft.WindowsTerminal -e如果安装预览版执行winget install --id Microsoft.WindowsTerminal.Preview -e等待进度条走完终端会自动安装完成。安装过程中会显示下载进度和安装进度。注意一点-e参数表示精确匹配 ID防止装错应用。如果你是在脚本里批量安装建议加上--silent参数例如winget install --id Microsoft.WindowsTerminal -e --silent --accept-package-agreements --accept-source-agreements这个命令在 Windows 10 和 Windows 11 上都适用实测很稳定。3.3 GitHub 离线包手动部署适用于内网环境、无商店环境或者你想安装特定版本的情况。浏览器打开 Windows 终端官方 GitHub 的 releases 页面。找到最新的稳定版 Release展开“Assets”下拉列表。下载.msixbundle文件。根据你的电脑架构下载对应的包通常 64 位系统选择x64ARM 设备选择arm64。如果分不清优先选不带架构后缀但也包含在 Assets 列表里的那个整合包。如果下载的是.zip格式的压缩包先解压。如果是单独的.msixbundle文件直接用 PowerShell 签入。在 PowerShell 中执行签入命令注意把路径换成你实际的下载目录Add-AppxPackage -Path C:\Users\你的用户名\Downloads\Microsoft.WindowsTerminal_xxx.msixbundle有些离线包还会依赖几个.appx文件比如VCLibs和UI.Xaml。如果看到类似“缺少依赖项”的错误先手动安装同目录下的这些依赖包再安装主包。我也遇到过 PowerShell 因为当前环境策略而无法执行脚本的情况。如果Add-AppxPackage被限制了先检查执行策略Get-ExecutionPolicy如果结果是Restricted临时放开Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy RemoteSigned注意这是很多新人会踩的坑。离线包方式不推荐给身边不太折腾电脑的朋友但对需要批量部署的运维场景来说它反而是最可控的路径。三种安装方式实测下来我的结论是这样的做一个表方便大家对照安装方式难度更新方式适用场景微软商店低自动更新个人日常使用winget命令行低手动或脚本更新开发者、批量部署GitHub 离线包中手动更新内网环境、指定版本4. 装好后第一件事把多标签真正用起来安装是万里长征第一步接下来这一步才是提升工作效率的关键。Windows 终端最值得玩的就是多标签页和窗格分屏很多人装上用成单窗口跟旧终端一个样那基本等于白装了。4.1 一分钟掌握多标签页操作先记住最核心的几个快捷键全部都是肌肉记忆级别的新建标签页Ctrl Shift T。它会打开你设置的默认配置文件里的 Shell通常是 PowerShell。新建指定配置文件的标签页直接按 Ctrl Shift 数字键1 对应配置文件下拉列表里的第一个2 对应第二个。把 WSL、CMD、SSH 按顺序排好切换体验非常爽。关闭标签页Ctrl Shift W。切换标签页Ctrl Tab 在标签页之间循环切换或者 Ctrl Alt 数字键直接跳到对应标签页。复制/粘贴Ctrl C / Ctrl V这里特别提一下Windows 终端里 CtrlC 在没有选中文本时是中断信号有选中文本时是复制非常智能。在新版的 Windows 终端里你还可以拖拽标签页调整顺序甚至把标签页直接拖出当前窗口变成一个独立窗口。这个操作对经常一个项目开多个终端的人来说很实用。4.2 窗格分屏比多标签更进阶的玩法多标签适合在多个任务上下文之间横向切换而窗格更适合在同一任务上下文里同时看多个输出。左右分屏Alt Shift 上下分屏Alt Shift -在窗格之间切换焦点Alt 方向键或者按住 Alt 键再用鼠标点击窗格。关闭当前窗格Ctrl Shift W举一个常见场景你在跑一个 Python 服务左边窗格实时看日志右边窗格打开 vim 改代码遇到报错立刻切到右边改改完直接启动服务整个过程不需要来回切换标签页。我个人觉得这是 Windows 终端最“回不去”的功能之一比单纯的多标签还要高一个档次。4.3 把 PowerShell、CMD、WSL 和 SSH 全部整合进来Windows 终端只是个壳真正的“终端会话”是由不同配置文件提供的。默认情况下它已经帮你生成了 PowerShell、CMD 等配置文件但你需要主动配置一下才能让它物尽其用。打开设置的方式有两种点击标签栏右侧的下拉箭头选择“设置”或者按快捷键 Ctrl 逗号。Windows 终端的所有配置最终都落在settings.json上点击左下角的“打开 JSON 文件”就可以直接编辑。这个 JSON 文件是全局生效的支持注释JSONC 格式所以完全可以当成笔记来用。一个典型的配置文件结构长这样{ profiles: { defaults: {}, list: [ { guid: {574e775e-4f15-4705-b358-48c7e1b2e2f1}, name: PowerShell, commandline: powershell.exe, hidden: false }, { guid: {0caa0dad-35bf-4d13-8a96-2e38b7e2f0e0}, name: CMD, commandline: cmd.exe, hidden: false }, { guid: {2b0c5e6e-3f1a-4e3a-9a8c-8b0d4f4e0c2a}, name: Ubuntu (WSL), commandline: wsl.exe -d Ubuntu, source: Windows.Terminal.Wsl, hidden: false } ] } }如果你平时用 WSL、SSH、Docker 或一些自定义工具强烈建议把常用命令直接固化成独立的配置文件让 Windows 终端变成一个统一入口。比如 SSH 到一个固定服务器可以写成{ name: SSH-Prod, commandline: ssh deploy192.168.1.100, hidden: false }启动方式也简单标签页下拉箭头旁边就能直接选。Windows 终端本身没有会话保持功能但配合 WSL 里的 tmux或者本地 server 场景它就是一套接近 Mac 上 iTerm2 的体验。4.4 配色方案、背景和字体配置玩终端怎么能不调配色。Windows 终端内置了多套配色方案比如 Tango、One Half Dark、Solarized 等。在“设置”里可以直接预览并应用也可以把配色方案的全部内容拷贝到settings.json里手动定义。我把自己常用的配色方案贴出来这是一套深色护眼方案schemes: [ { name: My Dark Theme, foreground: #D4D4D4, background: #1E1E1E, cursorColor: #AEAFAD, black: #000000, brightBlack: #5C6370, red: #E06C75, brightRed: #FF7B72, green: #98C379, brightGreen: #B5CEA8, yellow: #D19A66, brightYellow: #E5C07B, blue: #61AFEF, brightBlue: #82AAFF, purple: #C678DD, brightPurple: #D55FDE, cyan: #56B6C2, brightCyan: #56B6C2, white: #ABB2BF, brightWhite: #FFFFFF } ]在配置文件的 list 里给对应 profile 加上colorScheme: My Dark Theme就会生效。字体方面Windows 终端默认字体是 Cascadia Mono如果你做开发我强烈建议换一个带有明确“等宽”提示的字体。比较大众的选择有 Cascadia Code自带连字、JetBrains Mono、Fira Code、Sarasa Mono SC更纱黑体中英文混排效果很好。设置方法同样在 JSON 里profiles: { defaults: { font: { face: Sarasa Mono SC, size: 11 }, opacity: 95, useAcrylic: true } }透明背景效果能显著提升观感但注意很多人在低配电脑上开透明度会导致打字轻微卡顿这个看机器性能取舍。4.5 设置默认启动目录和管理员权限默认情况下Windows 终端新标签页会打开到用户目录。如果你和我一样有个专门放代码的工作目录直接设置默认启动目录能省不少事。在 profile 的 defaults 里加一行配置startingDirectory: D:\\Work\\Code如果平时经常需要管理员权限执行命令Windows 终端也可以直接以管理员身份运行。找到“终端”快捷方式右键选择“属性”在“兼容性”里勾选“以管理员身份运行”。不过我建议不要全时段管理员运行而是按下 Ctrl Shift 点击标签页下拉按钮或者用“以管理员身份打开”菜单只在需要时提升权限更符合安全习惯。5. 日常使用会遇到的问题与排查技巧这部分我整理了个人实测和社区里出现频率最高的几个问题对应给出可落地的排查思路。5.1 中文乱码或字体显示不正常现象终端里中文显示成方块或者英文和中文宽度不对看起来参差不齐。排查方法先用快捷键Ctrl Shift P打开命令面板输入“settings”看看字体设置。Windows 终端本身对 Unicode 支持已经很完善大多数问题是字体本身没有中文字形导致的。解决方案是在配置里把字体切换成支持中文的等宽字体比如“Sarasa Mono SC”或者“微软雅黑”微软雅黑不是等宽但至少中文不会变方块。如果使用的是远程连接检查远程服务器的代码页是否设置为 UTF-8。5.2 复制粘贴失效或者带上了奇怪的格式现象CtrlC 复制了但 CtrlV 粘贴时不生效或者从浏览器复制了一段带颜色的代码贴到终端里全是转义字符。Windows 终端的复制粘贴遵循标准的剪贴板协议常规情况下不会出问题。如果复制失效先看看是不是当前模式是否处于“选择模式”。鼠标选中文本后默认会自动复制这是 Windows 终端的实验性功能之一可以自己在“交互”里开关。从网页复制代码时的乱码问题比较常见可以在粘贴前先用 CtrlShiftV 执行纯文本粘贴这个快捷方式在某些版本中默认开启。5.3 滚动卡顿或者 GPU 占用过高现象日志刷新快的时候滚动明显卡顿。新版本的 Windows 终端默认使用 AtlasEngine 渲染引擎滚动性能已经大幅提升。如果你用的是旧版本或者机器显卡驱动有问题可以尝试手动调整渲染引擎。在 settings.json 里加experimental.renderingEngine: atlas如果仍然卡顿再切换到老的渲染引擎试试experimental.renderingEngine: cached同时检查系统的 GPU 驱动是否最新。说实话Windows 终端的性能问题在老版本里很常见升级到最新版本能解决绝大多数卡顿问题而且没有任何副作用。5.4 配置修改后没生效现象改了 settings.json重启终端后部分配置还是没有生效。Windows 终端检测到 JSON 文件有改动会自动重载配置不需要完全退出。如果没生效先手动检查 JSON 语法是否正确。最常见的错误是括号不匹配、行末多逗号或者路径反斜杠没有转义。比如路径D:\Work必须写成D:\\Work。另外方案里的颜色值必须是 6 位十六进制不能使用缩写。如果还不行直接重启 Windows 终端。某些快捷键、启动时行为、通知相关设置必须彻底重启才生效。5.5 如何彻底卸载并重装有时候配置改乱了或者想从预览版回到稳定版快速卸载也算刚需。用 winget 卸载winget uninstall --id Microsoft.WindowsTerminal也可以用设置里的“应用”找到“终端”点击卸载。卸载后重新安装配置会恢复默认所以如果你有自定义的 settings.json卸载前记得先备份一份。顺带提一嘴Windows Terminal 的配置文件存放在%LOCALAPPDATA%\Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\LocalState\settings.json重装之前复制这个文件到安全位置装完直接覆盖回去所有习惯都能无缝迁移。提示如果你从 Github 安装的版本和从商店安装的版本结构略有不同配置目录也可能不同但最终都叫 settings.json。备份时整体复制整个 LocalState 目录是最稳妥的方案。5.6 多标签管理相关的高频问题多标签已经成了日常刚需但也会遇到一些小问题标签页太多放不下。当标签页超过窗口宽度时Windows 终端会自动变成多行显示新版本已支持或者出现横向滚动条。可以把标签页往窗口外拖拽成独立窗口减少拥挤。误触关闭标签页。系统默认的 CtrlShiftW 关闭标签页非常顺手但也容易误触。如果你经常误关可以在设置里关掉这个快捷键或者改成别的组合。标签页名称不明显。可以给标签页手动重命名右键标签页选择“重命名”比如把 SSH 连接的标签页命名为服务器名称比默认的 PowerShell 直观得多。6. 从安装到日常效率的提升路径说到底Windows 终端只是一个工具真正值钱的是你怎么用它来提升日常效率。安装和基本配置只能算拿到了一台好车接下来要上路才见真功夫。我自己的习惯是默认开三个标签页一个 PowerShell 用于日常文件操作和 Git 操作一个 WSLUbuntu用于服务端开发和脚本运行还有一个固定 SSH 到工作用的服务器。三个标签页配合窗格分屏再加上 Alt方向键切换几乎能在一条命令内完成“看日志、改代码、跑服务、连服务器”的全部操作。Windows 终端还支持启动时自动打开多个标签页。在 settings.json 里配置startupActions简单写几个startupActions: new-tab; mw -d ; split-pane -H -d ; new-tab -d这段会在启动时新建一个标签页、左右分屏、再新建一个标签页。熟练之后每天早上一打开电脑就是一套定制好的开发环境而不是手动逐个开窗口。另外对做了很多配置的朋友一个建议把 settings.json 纳入你自己的 dotfiles 仓库里重装系统后三分钟还原所有配置这才是终端的正确打开方式。7. 写在最后的经验分享距离第一次使用 Windows 终端到现在也有不少年头了中间换了无数终端工具试过 Tabby、MobaXterm、FluentTerminal等等但兜兜转转还是 Windows 终端最稳。原因很朴素它和 Windows 系统绑定得最深更新快开源底层渲染和字体处理都有保障。多标签 窗格这个组合配上 WSLWindows 上的命令行体验已经完全不输 macOS 了。如果你是第一次装我的建议是别急着折腾一堆花里胡哨的配色和字体先把多标签页、窗格分屏这些基础功能用起来让肌肉记忆先形成。等你觉得“切换窗口”这个动作明显变少了再花一个下午调配色、配快捷键、设置启动动作整个工具链就会越来越顺手。最后再分享一个小技巧新版 Windows 终端的设置界面支持“搜索框”按 Ctrl逗号打开设置后直接搜“快捷键”或者“外观”不用在层层菜单里翻。配置 JSON 文件也支持智能提示右上角“打开 JSON 文件”后把鼠标悬停在属性名上很多字段都有官方注释说明遇到不确定的配置项优先看提示一般都能解决。装上它把多标签用起来你很快就会发现命令行操作再也没有以前那么手忙脚乱了。