为什么用 Windows Terminal
用过 macOS iTerm2 或 Linux 上 GNOME Terminal 的人,再回到 Windows 自带的 conhost.exe(CMD 背后的黑窗口),会感觉这是一个时代的产品。Windows Terminal 主要解决了三个问题:
- 多 Shell 标签:PowerShell、CMD、WSL Ubuntu、Azure Cloud Shell 在同一个窗口里并存;
- GPU 加速渲染:滚动流畅,支持连字(ligatures)、Unicode、emoji;
- 配置现代化:JSON 配置文件 + GUI 设置,主题/字体/快捷键都能精细调整。
再加上 PowerShell 7、WSL2 已经成为现代 Windows 命令行的标配,整套工具链的体验已经非常接近 macOS/Linux。
安装与基础设置
从 Microsoft Store 搜索 Windows Terminal 安装,或用 winget:
winget install Microsoft.WindowsTerminal
装好之后第一次打开,默认会有 PowerShell、CMD 两个 profile。如果装了 WSL,会自动出现 Ubuntu 的 profile。
设置入口:点击顶部下拉箭头 → 设置(或 Ctrl + ,)。第一次进入会推荐使用 JSON 配置文件——本节先用 GUI,后续再讲 JSON。
字体:选对字体体验翻倍
Windows Terminal 默认字体是 Cascadia Mono,但推荐换成支持连字 + 编程友好的字体:
| 字体 | 特点 |
|---|---|
| Cascadia Code | 微软官方,支持连字,开箱即用 |
| JetBrains Mono | JetBrains 出品,连字最丰富 |
| Fira Code | 经典程序员字体,连字齐全 |
| MesloLGS NF | Powerlevel10k 主题搭配字体 |
| Maple Mono | 中文用户友好,中英文 2:1 宽度对齐 |
在设置 → 外观 → 字体里切换。建议字重 Regular + 字号 13~14,长时间看不累。
配色方案
Windows Terminal 内置了多套配色:
- Campbell Powershell:默认;
- One Half Dark / Light:Vim 经典配色,深色模式好看;
- Solarized Dark / Light:程序员熟悉的色温;
- Tango Dark / Light:经典 GNOME 风;
- Dracula:紫色调,网红款。
喜欢更丰富的可以选择 windowsterminalthemes.dev,里面聚合了大量社区主题,复制 JSON 粘贴到 settings.json 即可。
每个 Profile 的独立配置
Windows Terminal 把每个 Shell(PowerShell、CMD、WSL)都视为一个 profile,可以独立配置:
- 启动目录;
- 字体和字号;
- 配色;
- 背景图(支持透明度);
- 图标(侧边栏显示);
- 命令行参数(如
-NoExit -Command "...")。
我的 PowerShell profile 通常配置:
- 启动目录:
D:\workspace; - 字体:JetBrains Mono Regular 13;
- 配色:One Half Dark;
- 背景:透明 + 模糊;
- 图标:PowerShell 官方图标。
JSON 配置:settings.json 详解
虽然 GUI 已经能配大部分内容,但精细定制还是要靠 settings.json。位置:
%LOCALAPPDATA%\Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\LocalState\settings.json
典型结构:
{
"profiles": {
"defaults": {
"font": { "face": "JetBrains Mono", "size": 13 },
"colorScheme": "One Half Dark",
"useAcrylic": true,
"acrylicOpacity": 0.85
},
"list": [
{
"guid": "{...}",
"name": "PowerShell",
"commandline": "pwsh.exe",
"startingDirectory": "D:\\workspace"
},
{
"guid": "{...}",
"name": "Ubuntu",
"commandline": "wsl.exe -d Ubuntu",
"icon": "C:\\path\\to\\ubuntu.png"
}
]
},
"schemes": [
{
"name": "Custom Dark",
"background": "#1e1e1e",
"foreground": "#d4d4d4",
"cursorColor": "#ffffff"
}
]
}
GUI 里改设置会写到这个文件,所以两套方式是同步的。建议在编辑器(Sublime Text)里改 JSON,版本控制 + diff 友好。
分屏:Panels 模式
Windows Terminal 支持水平 / 垂直分屏,在一个窗口里同时跑多个 Shell。
默认快捷键:
Alt + Shift + D:水平分屏;Alt + Shift + Plus:垂直分屏;Alt + 方向键:在分屏间切换焦点。
分屏场景:左边看日志,右边执行命令;上边跑服务器,下边调试客户端。
PowerShell 7:值得切换
Windows 自带的 PowerShell 5.x 是基于 .NET Framework 的老版本,性能和功能都比 PowerShell 7(基于 .NET Core)弱一截。推荐安装 PowerShell 7:
winget install Microsoft.PowerShell
PowerShell 7 的优势:
- 跨平台(Linux、macOS 也能用);
- 性能大幅提升(启动速度 ~3 倍);
- 支持
??、??=等现代运算符; - 更好的错误信息;
- 原生支持
for_each -Parallel并行处理。
在 Windows Terminal 里把 PowerShell profile 的命令行改成 pwsh.exe 即可使用 7。
SSH 与远程开发
Windows Terminal 把 SSH 连接做成 profile:
- 设置 → 新增 profile;
- 命令行:
ssh user@host; - 图标:放一张服务器 PNG。
这样侧边栏会有一个"我的服务器"图标,点开直接连。如果配了 SSH config(在 ~/.ssh/config 里),多个服务器可以分得很清楚。
Git Bash 集成
装了 Git for Windows 后,会有一个 Git Bash profile。配置建议:
- 命令行:
"C:\\Program Files\\Git\\bin\\bash.exe" --login -i; - 图标:Git 官方图标;
- 配色:One Half Dark 或 Solarized Dark。
Git Bash 的体验很接近 Linux,配上 oh-my-bash 还能拿到漂亮的提示符和补全。
常用快捷键
| 快捷键 | 作用 |
|---|---|
Ctrl + Shift + T | 新建标签 |
Ctrl + Tab | 切换标签(可视化选择) |
Ctrl + Shift + W | 关闭当前标签 |
Ctrl + Shift + 1/2/3 | 切换到指定 profile |
Alt + Shift + D | 水平分屏 |
Alt + Shift + + | 垂直分屏 |
Alt + 方向键 | 分屏间切换焦点 |
Ctrl + Shift + 滚轮 | 调字号 |
Ctrl + , | 打开设置 |
Ctrl + Shift + F | 搜索 |
这些快捷键全部可以在 settings.json 的 keybindings 里自定义重映射。
和其他工具的协作
Windows Terminal + Clink + PowerShell 7 + WSL 构成了我日常的命令行工作流:
- 在 Everything 里搜到目标文件 → 复制路径 → 切到 Terminal →
cd进去; - CMD 偶尔还要用,配 Clink 增强体验;
- 需要 Linux 工具(grep、awk、sed)时切 WSL;
- 需要 SSH 连服务器时,直接在 Terminal profile 选目标。
总结
Windows Terminal 让 Windows 命令行体验第一次真正现代化。它不只是一个"更漂亮的 CMD",而是一个把 PowerShell、CMD、WSL、SSH 都统一起来的容器。
如果你还在裸用 conhost.exe 或 cmd.exe,强烈建议花一小时把 Windows Terminal 装好、配好——之后打开命令行就不会想回到过去。