1. 前言

记录在一次Windows中升级PowerShell 5.1至PowerShell 7的,并使用 oh my posh 对终端进行美化的折腾过程。

2. 升级PowerShell

参考在 Windows 上安装 PowerShell - PowerShell | Microsoft Learn,在PowerShell中直接运行如下命令安装最新版本

1
winget install --id Microsoft.Powershell --source winget

安装完成后需要修改默认终端,随便打开一个终端,点击设置,然后将默认启动改为PowerShell 7,如图:

image-20241123193958156

3. 使用 oh my posh 进行美化

在PowerShell中进行安装:

1
Set-ExecutionPolicy Bypass -Scope Process -ForceInvoke-Expression ((New-Object System.Net.WebClient).DownloadString('https://ohmyposh.dev/install.ps1'))

重启终端,输入oh-my-posh,若打印如下内容,则说明安装成功:

image-20241123194432500

更改PowerShell的安全策略:以管理员身份运行,然后输入如下内容:

1
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope LocalMachine

打开配置文件

1
notepad $PROFILE

如果提示该文件不存在,可以使用如下命令创建

1
New-Item -Path $PROFILE -Type File -Force

在打开的配置文件添加以下代码并保存

1
oh-my-posh init pwsh | Invoke-Expression

重新打开终端会加载默认主题。

Nerd Fonts 官网下载一款自己喜欢的字体,这里以Cousine Nerd Font为例,解压压缩包后,右键安装所有字体

image-20241123194822118

然后在外观中配置刚刚下载的字体,如图

image-20241123202608377

显示可用的主题:

1
Get-PoshThemes

记住好自己要切换的主题名称,然后ctrl+左键打开主题文件夹,如图

image-20241123202959183

打开配置文件:

1
notepad $PROFILE 

配置主题路径,以wholespace主题为例:

1
oh-my-posh init pwsh  --config "Senv:POSH_THEMES_PATH/wholespace.omp.json" | Invoke-Expression

重载主题,命令如下

1
. $PROFILE

当然,还可以在终端外观设置中设置背景和透明度。

4. 参考资料

https://mp.weixin.qq.com/s/KWlN5s_rdLn8oO_iL2vbgg