0%

如何对PowerShell进行美化

PowerShell是微软现在主推的一款命令行工具,接下来会介绍它的安装以及美化方法。

PowerShell安装以及美化方法

安装

这里使用官方主推的方式: Winget

Winget是Windows包管理程序,是一种命令行工具,用户可以通过它对应用程序进行查找、安装、升级、删除等操作

1
2
# 搜索当前最新版本PowerShell
$ winget search Microsoft.PowerShell

将会输出可用版本,通过Id参数指定安装版本

image-20221221151940824

1
2
3
4
# 正式版
$ winget install --id Microsoft.Powershell --source winget
# 预览版
$ winget install --id Microsoft.Powershell.Preview --source winget

切换至默认工具

image-20221221152249222

美化

效果图展示

image-20221221152120554

设置窗口背景

image-20221221152319574

打开设置配置文件,在这里我使用的是VSCode

定位至 “profiles” 属性

defaults是给每一个窗口统一设置背景属性,也可以在List属性内给每个窗口单独配置

我们首先给defaults属性进行如下设置

1
2
3
4
5
6
7
8
9
10
11
12
"defaults": 
{
"backgroundImage": "D:/backgroud/10.png", // 背景图片,需要自己在本地文件目录中配置
"backgroundImageOpacity": 1.0, // 背景透明度 0 - 1.0
// "font":
// {
// "face": "JetBrainsMonoNL NFM",
// "size": 10
// },
"opacity": 20, // 亚克力效果透明度 0 - 100
"useAcrylic": true // 开启亚克力效果
}

可以自己对参数进行微调,保存后PowerShell界面会及时刷新。

可参考官方文档进行更多配置:Windows 终端中的外观配置文件设置

oh My Posh

官方文档 Oh My Posh

安装

1
$ winget install JanDeDobbeleer.OhMyPosh -s winget

更改Prompt

我理解的$PROFIL指定了开启窗口第一时间要加载的内容

推荐使用VsCode

1
$ code $PROFILE

使用Notepad

1
$ notepad $PROFILE

添加如下文字

1
2
# 引入ohmyposh
oh-my-posh init pwsh --config "$env:POSH_THEMES_PATH\montys.omp.json" | Invoke-Expression

主题切换

注:

montys.omp.json 指的便是一个主题文件

“$env:POSH_THEMES_PATH\montys.omp.json” 据此可知,这是指定了本地主题文件

本地文件位置: C:\Users\YourUserName\AppData\Local\Programs\oh-my-posh\themes

官方主题展示:ohMyPosh Theme

你可以在官方文档中挑选好对应主题,将montys更改为对应的主题名,即可完成主题切换

注:切换主题或初次设置主题都应该要重新开启下PowerShell窗口

当前效果:

image-20221221155410163

出现框框是因为我们没有对应的字体,下一步我们需要安装相应的字体

更换字体

Oh My Posh 推荐字体 Meslo LGM NF下载链接

官方提供了工具可以自动安装字体,但是我因为网络问题一直无法完成下载,如果你对自己的网络状态有信心,可以跟随官方文档试一下

Oh My Posh 字体安装

也可以在这里下载JetBrainsMono Nerd Font NerdFonts

在这里使用手动安装的方式

将下载好的字体保存解压至一个文件夹

image-20221221161752197

打开字体设置

image-20221221161842840

将下好了字体文件全部拖入,或者拖入指定字体文件也可以。

下一步,继续打开PowerShell Setting文件

继续定位至profiles

1
2
3
4
5
6
7
8
9
10
11
12
13
14
"defaults": 
{
"backgroundImage": "D:/backgroud/10.png",
"backgroundImageOpacity": 1.0,
// 字体设置
"font":
{
// "face": "JetBrainsMonoNL NFM",
"face": "MesloLGM NF", // 指定字体
"size": 10 // 字体大小
},
"opacity": 20,
"useAcrylic": true
},

再次打开PowerShell,会发现Oh-My-Posh主题中字体正确显示了

image-20221221173618476

文件夹图标

项目地址: Terminal-Icons

首先安装图标

1
$ Install-Module -Name Terminal-Icons -Repository PSGallery

然后继续编辑$PROFILE文件

最后为

1
2
3
4
5
# 引入ohmyposh
oh-my-posh init pwsh --config "$env:POSH_THEMES_PATH\montys.omp.json" | Invoke-Expression

# 引入Terminal-Icons
Import-Module -Name Terminal-Icons

效果如图

image-20221221174250786

工具

Gsudo

让你的PowerShell拥有和Linux命令行同样的功能,可以通过sudo运行单条指令,也可以输入sudo将当前PowerShell切换至管理员模式

文档: gsudo

下载

1
$ winget install gerardog.gsudo

使用

image-20221221175157552