这篇教程讲的是一件很实际的事:把 Windows 上的命令行环境做成“打开就能干活”的状态。目标不是花里胡哨,而是更少的敲字、更清晰的提示、更稳定的多配置管理:用 Windows Terminal 统一入口,用 PowerShell 7 做日常 shell,用 oh-my-posh 提供可读的提示符(Git 分支、耗时、错误码等)。
适合这些情况:日常写代码/写脚本、需要频繁切换目录与仓库、常用 SSH/WSL、经常同时开多个终端标签页,或者你已经装了很多工具但“每台机器配置都不一样”。完成后你会得到:1)一个更好用的终端入口(多标签、多窗格、快捷键);2)可读性更强的提示符;3)常用别名/函数与历史补全;4)配置可备份、可同步。
Windows Terminal 官方介绍:https://aka.ms/terminal
如果你已启用 winget(Windows 10/11 通常自带),可以直接安装/更新:
winget install --id Microsoft.WindowsTerminal -e
安装后建议先做两件小事:把默认配置文件位置记下来(后面要备份),以及熟悉常用快捷键(新建标签、拆分窗格、搜索)。
PowerShell 文档:https://learn.microsoft.com/powershell/
建议使用 PowerShell 7 作为默认 shell(兼容性、性能、模块生态都更好)。安装命令:
winget install --id Microsoft.PowerShell -e
安装完成后,在 Windows Terminal 的设置里,把默认配置文件切到 PowerShell 7(或新增一个“PowerShell 7”配置)。
oh-my-posh 官网:https://ohmyposh.dev
安装(同样推荐 winget):
winget install JanDeDobbeleer.OhMyPosh -e
安装后你需要做两件事:选择一个主题、在 PowerShell 启动时自动启用。下面给一份“可直接用”的初始化示例(写入你的 PowerShell Profile)。
很多 oh-my-posh 主题会用到 Nerd Font 图标,如果不装字体可能出现方块/乱码。你可以装一个常用字体(例如 MesloLGS NF、CaskaydiaCove Nerd Font 等),然后在 Windows Terminal 的 PowerShell 配置里把字体改成对应的 Nerd Font。
如果你不想折腾字体,也可以先选“纯文本”主题,等流程跑通再升级字体。
先打开 Profile 路径(不存在就创建)。在 PowerShell 里执行:
notepad $PROFILE
把下面内容粘进去(按需改主题路径/主题名):
# oh-my-posh 初始化(示例主题,可替换为你喜欢的) # 查看主题列表:Get-PoshThemes oh-my-posh init pwsh --config "$env:POSH_THEMES_PATHjandedobbeleer.omp.json" | Invoke- # 让补全更顺手(PSReadLine) Set-PSReadLineOption -PredictionSource History Set-PSReadLineOption -PredictionViewStyle ListView # 常用别名:按你习惯增删 Set-Alias ll Get-ChildItem Set-Alias gs git
注意:如果你在公司环境/受控设备上,可能会遇到执行策略限制。此时不要去做任何“绕过安全”的操作,优先走合规方式:向管理员申请、或仅使用不需要加载脚本的配置。
Terminal 的设置(JSON/图形界面)里建议关注几个点:默认启动目录、复制粘贴快捷键冲突、是否启用“在同一窗口新建标签”、以及窗格分屏的快捷键。把这些设置稳定下来,你会明显减少“找窗口/找目录”的时间。
另外,如果你经常在特定仓库/项目里工作,可以为该项目单独建一个配置文件,固定起始目录与图标,做到“一键进入工作区”。
建议把两类文件纳入备份:1)Windows Terminal 的 settings.json(决定你的配置文件、快捷键、配色等);2)PowerShell Profile($PROFILE 文件)。
你可以把它们放进自己的私有仓库/同步盘(例如 OneDrive/企业网盘),但要注意:不要把包含 token、私钥路径、敏感环境变量的内容直接提交公开仓库。
1)主题不生效:确认 Profile 是否加载(打开 PowerShell 看是否有报错),以及 oh-my-posh 是否在 PATH 中。
2)图标乱码:确认 Terminal 的字体已切到 Nerd Font,并重启 Terminal。
3)Git 信息不显示:进入一个 Git 仓库目录再观察;某些主题需要 git 可执行文件可用。
4)启动很慢:先精简 Profile 里的模块加载与网络相关命令,把“每次启动都联网”的逻辑移除。
Windows Terminal:https://aka.ms/terminal
oh-my-posh:https://ohmyposh.dev
PowerShell 文档:https://learn.microsoft.com/powershell/