PowerShell + Windows Terminal 美化 & 增强教程
Windows Terminal + PowerShell 默认外观和功能较为基础,但通过 Oh My Posh 及其他增强工具,你可以打造一个更美观、更高效的终端环境。本教程提供完整的安装、美化和优化步骤,包括常见问题的解决方案。
1️⃣ 安装 Windows Terminal
Windows Terminal 是微软官方的现代化终端,支持多标签、主题自定义、GPU 加速等功能。
🔹 方法 1:使用 Microsoft Store(推荐)
- 打开 Microsoft Store
- 搜索 Windows Terminal
- 点击 安装
🔹 方法 2:使用 Winget(命令行安装)
如果你的系统支持 winget
,可以直接运行:
winget install --id Microsoft.WindowsTerminal -e
🔹 方法 3:从 GitHub 下载手动安装
- 访问 Windows Terminal 官方 GitHub
- 下载最新的
.msixbundle
- 双击安装
2️⃣ 如何打开 Windows Terminal
🔹 方法 1:使用开始菜单
- 按 Win + S
- 搜索 Windows Terminal(终端)
- 点击打开
🔹 方法 2:使用快捷键
- Win + X → 选择 Windows Terminal(终端)
- Win + R → 输入 wt → 按 Enter
🔹 方法 3:右键菜单打开
- 在 桌面或文件夹空白处 右键
- 选择 在 Windows Terminal(终端)中打开
- 这会直接打开当前目录的终端
3️⃣ 安装 Oh My Posh(终端美化)
Oh My Posh 是一个强大的终端美化工具,可以为 PowerShell 提供炫酷的主题。
🔹 方法 1:使用 Winget 安装(推荐)
winget install JanDeDobbeleer.OhMyPosh -s winget
🔹 方法 2:手动安装
- 访问 Oh My Posh GitHub Releases
- 下载 Windows 版本的安装包
- 解压后,将
oh-my-posh.exe
添加到PATH
4️⃣ 配置 Oh My Posh 环境变量
🔹 确定安装路径
用户级的安装路径如下图:
默认是安装在当前用户的路径下。如果是全部用户,那么路径大概是 C:\Program Files\oh-my-posh
,有可能是C:\Program Files (x86)\oh-my-posh
🔹 确定安装路径
- 按 Win + S,搜索 环境变量,然后打开 “编辑系统环境变量”
- 在 “高级” 选项卡中,点击 “环境变量”
- 在 “用户变量” 或 “系统变量” 里找到 Path,然后 编辑
- 点击 “新建”,然后添加以下路径:
🔹 验证安装是否成功
oh-my-posh --version
如果返回版本号,说明安装成功!🎉
5️⃣ 配置 Oh My Posh 主题
🔹 测试 Oh My Posh 默认主题
先运行下面的命令,看看终端是否已经可以使用 Oh My Posh:
oh-my-posh init pwsh | Invoke-Expression
💡 如果成功,你的终端提示符会发生变化!
📌 但是这个是临时的,重启终端后会恢复原样,所以我们需要进行永久配置。
🔹 配置 Oh My Posh 让它永久生效
🔹 确定配置文件存在
运行以下命令,确定配置文件是否存在:
Test-Path $PROFILE
如果返回是False,那么 PowerShell 配置文件 ($PROFILE) 不存在。
如果结果是没有这个文件,那么需要手动创建。手动创建 $PROFILE 的命令:
New-Item -Path $PROFILE -ItemType File -Force
📌 作用:这会创建 Microsoft.PowerShell_profile.ps1 文件,并确保它存在。
然后再检查:
Test-Path $PROFILE
如果返回 True,说明文件已经成功创建!🎉
🔹 写入 Oh My Posh 配置
- 编辑 $PROFILE:
notepad $PROFILE
- 在文件的最后添加:
oh-my-posh init pwsh --config "$env:POSH_THEMES_PATH/powerlevel10k_rainbow.omp.json" | Invoke-Expression
上面配置的主题是 powerlevel10k
,我比较喜欢这个主题,其他设备都是这个主题。大家可以根据自己喜欢设置不同的主题。下面是另一个主题:
oh-my-posh init pwsh --config "$env:POSH_THEMES_PATH/paradox.omp.json" | Invoke-Expression
🔹 允许 PowerShell 运行配置文件
如果 PowerShell 提示不允许运行脚本,你需要调整执行策略:
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
然后输入 Y
确认。
📌 解释:
- RemoteSigned 允许本地脚本运行,但来自互联网的脚本需要签名。
- -Scope CurrentUser 只对当前用户生效,不影响系统其他用户。
🔹 重新启动终端
- 关闭 Windows Terminal
- 重新打开 PowerShell
- 现在你的 Oh My Posh 主题应该会自动加载了!🎉
🔹 如何查看当前使用的主题
你可以运行:
oh-my-posh print
📌 这个命令会打印当前使用的主题的详细 JSON 配置,包括颜色、图标、段落等。
echo $env:POSH_THEME
📌 这会输出当前 Oh My Posh 所使用的 .omp.json 主题文件路径。
🔹 编辑当前 Oh My Posh 配置
如果你想修改当前主题:
oh-my-posh config edit
📌 这个命令会打开当前主题的 JSON 配置文件,你可以自定义提示符的样式、颜色、图标等。
6️⃣ 安装 Nerd Font(避免图标乱码)
Oh My Posh 依赖 Nerd Font 来正确显示图标。如果不安装,你可能会看到 ?
代替图标。
🔹 使用 Oh My Posh 命令安装字体
oh-my-posh font install # 安装字体(可选)
🔹 推荐字体下载
从 GitHub 下载适合终端的 Nerd Font:
- Cascadia Code Nerd Font(Windows Terminal 推荐)
🔗 下载 Cascadia Code Nerd Font - Fira Code Nerd Font(开发者推荐)
🔗 下载 Fira Code Nerd Font - JetBrains Mono Nerd Font(JetBrains 出品,开发友好)
🔗 下载 JetBrains Mono Nerd Font - Hack Nerd Font(等宽字体,适合终端)
🔗 下载 Hack Nerd Font - 也可以直接访问官网选择:
🔗 Nerd Fonts 官方网站
🔗 Nerd Fonts GitHub Releases(官方下载页)
🔹 安装字体 & 设置 Windows Terminal
- 解压
.zip
- 双击
.ttf
文件 → 点击安装 - 打开 Windows Terminal →
Ctrl + ,
进入 设置 - 选择 PowerShell,找到 字体(Font face)
- 选择刚刚安装的 Nerd Font
- 保存 & 关闭
✅ 推荐安装以下字体(TrueType .ttf)
- CaskaydiaCoveNerdFont-Regular.ttf(最标准的等宽 Nerd Font 版本)
- CaskaydiaCoveNerdFontMono-Regular.ttf(等宽版本,适合终端)
- CaskaydiaCoveNerdFont-Bold.ttf(加粗版,可选)
7️⃣ 切换临时 Oh My Posh 主题
🔹 选择主题并启用
列出本地可用主题:
Get-ChildItem $env:POSH_THEMES_PATH
然后使用某个主题,例如 paradox.omp.json
:
oh-my-posh init pwsh --config "$env:POSH_THEMES_PATH/paradox.omp.json" | Invoke-Expression
🔹 让配置永久生效
notepad $PROFILE
添加以下内容:
oh-my-posh init pwsh --config "$env:POSH_THEMES_PATH/paradox.omp.json" | Invoke-Expression
保存文件,重启终端 🎉
8️⃣ 增强 PowerShell 功能(Tab 补全、历史搜索、智能 cd
等)
🔹 启用语法高亮 & 补全(PSReadLine)
运行以下命令:
Install-Module PSReadLine -Scope CurrentUser -Force -SkipPublisherCheck
然后,打开 PowerShell 配置语法高亮:
# 启用语法高亮
Set-PSReadLineOption -Colors @{ "Command" = "DarkYellow" }
# 启用历史命令搜索(按 `Ctrl + R` 启用)
Set-PSReadLineOption -PredictionSource History
# 启用 Tab 补全
Set-PSReadLineOption -PredictionViewStyle ListView
Set-PSReadLineOption -HistorySearchCursorMovesToEnd
🔹 安装 zoxide
(更强大的 cd
命令)
zoxide
是一个比 cd
更智能的目录跳转工具:记住访问过的目录
winget install ajeetdsouza.zoxide
然后在 $PROFILE
里添加:
Invoke-Expression (& { (zoxide init powershell) -join "`n" })
这样,你可以使用:
z foo # 直接跳转到包含 'foo' 的目录
z ~/Documents # 直接跳转到 Documents
🔹 安装 eza
(更好的 ls
命令)
Windows 的 scoop 包管理器可以安装 exa(现在叫 eza)。如果你还没有安装 scoop,可以先运行:
irm get.scoop.sh | iex
然后安装 eza:
scoop install eza # 或 choco install exa
默认显示图标:
eza -l --icons
🔹 更好的 cat
命令(bat
)
bat
是 cat
的增强版:
winget install sharkdp.bat
然后使用:
bat file.txt
✅ 支持代码高亮
✅ 带行号
✅ 比 cat 更强大
🔹 fzf:终端模糊搜索
fzf
是一个强大的模糊搜索工具:
winget install junegunn.fzf
然后,你可以用:
Ctrl + R # 搜索历史命令
比 PowerShell 自带的 Ctrl + R 更智能!
9️⃣ 常见问题 & 解决方案
🔹 $PROFILE
文件不存在
如果 $PROFILE
不存在,先创建它:
New-Item -Path $PROFILE -ItemType File -Force
notepad $PROFILE
🔹 ?
号图标乱码
- 确保你安装了 Nerd Font
- 确保 Windows Terminal 选择了 Nerd Font
🔹 ls -l --icons
参数错误
PowerShell 可能误解析参数,使用:
eza --% -l --icons
结论:你的终端已全面优化!
🎉 现在你的 PowerShell 已经变成一个 更美观、更智能、更强大 的终端!
✅ 安装 Windows Terminal & Oh My Posh
✅ 配置终端字体,避免乱码
✅ 美化终端主题
✅ 增强补全、历史搜索、cd
& ls
🚀 试试看,如果有问题,欢迎留言交流!😊