如何彻底禁用 PowerShell 的更新提醒

每次打开 PowerShell 都弹出一行“新版本可用”的提示,看久了确实有点烦。今天就来聊聊如何“赶走”这个更新提醒,还你一个清爽的终端。

引言

PowerShell 是 Windows 下强大的命令行工具,但自从微软推出跨平台的 PowerShell 7 后,旧版 Windows PowerShell 5.1 就开始频繁“劝退”——每次启动都提示你升级到新版。如果你已经安装了 PowerShell 7,它自己也会定期检查更新,并在启动时输出提醒。

好消息是,这些提醒是可以关闭的(仅限 PowerShell 7+),但需要选对方法。本文将为你梳理所有可行的方案,并给出最推荐的实践。

⚠️ 第一步:先分清你用的是哪个版本

这是最关键的一步,因为**不同版本的 PowerShell 处理方式完全不同**。

  • Windows PowerShell 5.1(系统自带):

它的更新提示是硬编码在系统组件里的,**无法通过任何设置关闭**。如果你看到的是“升级到 PowerShell 7”的提示,唯一的“关闭”方式就是真的去安装 PowerShell 7 —— 安装后旧版提示会自然消失。

  • PowerShell 7+(可独立安装):

只有这个版本才支持关闭更新检查。以下所有方法均**仅适用于 PowerShell 7.0 及以上**。

方法一:设置环境变量(推荐 ✅)

这是官方推荐且最一劳永逸的方式。通过设置 POWERSHELL_UPDATECHECK 环境变量为 Off,可以全局禁用更新检查。

优点:一次设置,永久生效,对所有启动方式都有效。

缺点:需要管理员权限(系统级变量)或当前用户权限(用户级变量)。

操作步骤(Windows 10/11)

1. 右键点击“此电脑” → “属性”。

2. 点击“高级系统设置” → 在“高级”选项卡下点击“环境变量”。

3. 在“系统变量”(推荐)或“用户变量”区域,点击“新建”。

4. 变量名填写:POWERSHELL_UPDATECHECK

变量值填写:Off

5. 一路确定保存,**重启 PowerShell** 即可生效。

⚠️ 注意:不建议将此变量写在 PowerShell 的 $profile 配置文件中,因为更新检查在配置文件加载之前就已经执行,那样是无效的。

方法二:修改配置文件(硬关闭)

通过修改 PowerShell 7 的配置文件 powershell.config.json 来关闭更新检查,这是一种“硬”关闭,可靠性很高。

优点:不易被其他设置覆盖。

缺点:需要管理员权限,且操作稍微复杂一些。

操作步骤

1. 以**管理员身份**打开 PowerShell。

2. 执行以下命令打开 PowerShell 的安装目录:

explorer (Split-Path $PSHOME)

3. 在该目录下找到或新建 powershell.config.json 文件。

4. 用记事本打开,确保内容为以下 JSON 格式:

   {

     "PowershellUpdateCheck": "Off"

   }

5. 保存文件,重启 PowerShell。

该方法不直接禁用更新检查,而是通过隐藏启动时的横幅(包括更新提示)来“眼不见为净”。

优点:无需管理员权限,操作简单。

缺点:更新检查仍在后台进行,只是不显示提示,属于治标不治本。

适用场景

  • 创建快捷方式:在快捷方式的“目标”栏末尾加上 -nologo

  • Windows Terminal:在配置文件的“命令行”参数中添加 -nologo

方法四:Windows Terminal 中的组合拳

如果你使用 Windows Terminal,可以将环境变量设置与 -nologo 结合,创建一个**完全不显示更新提醒**的专用配置文件。

settings.json 中,为某个 PowerShell 配置文件修改 commandline 字段:

"commandline": "cmd /c set POWERSHELL_UPDATECHECK=Off & \"C:\\Program Files\\PowerShell\\7\\pwsh.exe\" -nologo"

这样启动时,更新检查被关闭,横幅也被隐藏,效果最彻底。

注意:此方法会使 PowerShell 的父进程变成 cmd.exe,但一般不影响日常使用。

方法对比总结

方法

适用版本

优点

缺点

环境变量

PowerShell 7+

一劳永逸,官方推荐

需要管理员权限

配置文件

PowerShell 7+

可靠性高,不易被覆盖

操作稍复杂,需管理员

-NoLogo 参数

PowerShell 7+

简单,无需管理员

不真正禁用检查,仅隐藏

Terminal 组合

PowerShell 7+

灵活,可定制

配置稍复杂

结语

如果你已经安装了 PowerShell 7,那么最推荐的做法是方法一(设置环境变量),简单、可靠、一次搞定。如果你只是偶尔使用 PowerShell,也不想折腾环境变量,那么方法三(加 -nologo)也能让你眼不见心不烦。

但请记住:Windows PowerShell 5.1 的提示是无法关闭的,如果它还在烦你,不妨直接升级到 PowerShell 7,新功能更香,更新提醒还能关,何乐而不为呢?

希望这篇小文能帮你彻底告别 PowerShell 的更新提醒。如果还有其他关于 PowerShell 的小技巧,欢迎在评论区交流讨论!😊