先来一张完成图

效果图

注意事项

  • 请耐心等候脚本执行完成, 如果出现网络相关的错误, 请仔细检查你是否已经科学上网
  • 如果脚本执行失败, 请自行思考+搜索为什么执行失败
  • 如果你有更好的写法建议, 请务必告诉我

PowerShell美化 一区别

安装

Windows Terminal

直接在微软的应用商店里进行下载,两个版本都可
都可

PowerShell 7

在官方仓库进行下载 地址

加速下载方法

cdrive download bdex://f4b8f0c00764fdc810786de7db95dbbc37a097a2

选择如图所示的选项

第四个是添加右键在此打开如有需要,可以勾选

安装字体(防止poweershell 7乱码)

这里推荐使用Nerd Fonts官网
下载之后解压安装即可

为Power Shell安装模块

打开 PowerShell 7 或者 Windows Terminal (它现在默认的配置文件应该是 PowerShell 7,如果不是可以在设置中进行选择)

# 安装 PSReadline 包,类似 zsh,增强命令行功能
Install-Module -Name PSReadLine -AllowPrerelease -Force -Verbose 
# 安装 posh-git 包,让 git 更好用
Install-Module posh-git -Scope CurrentUser -Verbose 
# 安装 oh-my-posh 包,类似 oh-my-zsh,让命令行更好用
Install-Module oh-my-posh -Scope CurrentUser -Verbose

winfetch 或 screenfetch (任选其一)

  • 安装 winfetch 包,类似 neofetch/screenfetch
Install-Script -Name pwshfetch-test-1
  • 安装 screenfetch 包
Install-Module -Name windows-screenfetch
Set-ExecutionPolicy -ExecutionPolicy Unrestricted
Import-Module windows-screenfetch

如果出现提示,输入 Y(同意)或者 A (全部同意)回车即可

问题记录:Import-Module : 无法加载文件,因为在此系统上禁止运行脚本。

输入

set-ExecutionPolicy RemoteSigned

配置

配置 Terminal

这里请自己去研究,毕竟都是中文,如果想全局设置请在默认里进行更改

  • 切换到 PowerShell 选项卡,点击 常规,在 命令行 的末尾加上 -nologo 参数,隐藏每次 PowerShell 启动的默认输出信息
    最后请不要忘记 保存

配置 PowerShell

以管理员身份运行 Windows Terminal,编辑 PowerShell 7 的配置文件

# 设置执行策略
Set-ExecutionPolicy RemoteSigned
# 建议禁用 Azure-Account 模块(↓包括$)
$env:AZ_ENABLE=$false
# 使用记事本打开 PowerShell 配置文件(没有则会新建该文件该文件)
if (!(Test-Path -Path $PROFILE )) { New-Item -Type File -Path $PROFILE -Force }
notepad $PROFILE

编辑配置文件如下,然后保存

# 导入 posh-git 模块
Import-Module posh-git

# 导入 oh-my-posh 模块
Import-Module oh-my-posh

#设置主题
Set-PoshPrompt -Theme cert

#设置 winfetch 模块 如果 使用的是 scrennfetch 则不需要
Set-Alias winfetch pwshfetch-test-1

# 设置 Ctrl+z 为撤销
Set-PSReadLineKeyHandler -Key "Ctrl+z" -Function Undo

# 设置 Tab 键菜单补全
Set-PSReadlineKeyHandler -Key Tab -Function Complete

# 使用 ls 和 ll 查看目录
function ListDirectory {
    (Get-ChildItem).Name
    Write-Host("")
}
Set-Alias -Name ls -Value ListDirectory
Set-Alias -Name ll -Value Get-ChildItem

# 设置向上键为后向搜索历史记录
Set-PSReadLineKeyHandler -Key UpArrow -Function HistorySearchBackward

# 设置向下键为前向搜索历史纪录
Set-PSReadLineKeyHandler -Key DownArrow -Function HistorySearchForward
  • 修改 PowerShell 7 配置文件 命令:notepad $PROFILE
  • 预览内置主题:Get-PoshThemes
  • 修改主题:修改配置文件中 的 Set-PoshPrompt -Theme [主题名称] 部分即可

感谢

Q.E.D.


Good is good, but better carries it.