定期更新 Windows 应用程序非常重要,它不仅能让你体验到最新功能,还能修补潜在的安全漏洞。然而,现实中很多用户并没有养成定期更新的习惯 —— 要么是忘记了,要么就是觉得手动更新太麻烦。客观来说,传统的更新流程确实有些繁琐。
对于 Windows 原生应用,微软商店(Microsoft Store)和 Windows Update 通常能搞定大部分自动更新,但有时也会出现更新不及时的情况。更让人头疼的是,系统并没有提供一个统一的标准入口来一键更新所有第三方程序。
其实很多小伙伴还不知道,Windows 内置了一个简单却极其强大的命令,可以让你一次性更新所有应用。这个命令就是 winget(Windows Package Manager 的简称)。它是微软直接集成在 Windows 系统中的命令行工具,无需打开浏览器,就能轻松完成软件的安装、更新和卸载。
想要一次性更新电脑上的所有应用,只需打开 PowerShell,并运行以下命令:
winget upgrade --all
该命令会扫描系统中所有 winget 能识别或已安装的应用,并与最新版本进行比对,自动更新所有落后的程序。由于 winget 默认会从多个来源(包括 winget 社区仓库和微软商店)拉取数据,因此它能同时覆盖传统安装程序和微软商店应用。
提示: 如果你只运行 winget upgrade(不加 --all 参数),系统会先列出所有需要更新的应用列表,而不会立即执行更新。对于初次使用的用户,建议先运行此命令,看看 winget 到底在追踪哪些应用。
除了批量更新,你也可以使用 winget 单独更新某个应用。只需在命令后加上应用 ID(在初次运行 winget 时会显示),即可精准更新。
例如,更新 Chrome 浏览器:
winget upgrade "Chrome"
此外,还有一个非常实用的命令可以查看 winget 能识别和管理的所有应用(包括非 winget 安装的程序)。你可以用它来盘点电脑上的软件:
winget list
虽然 winget 可以批量更新,但它默认并非“完全无人值守”。在执行更新前,它通常会弹出协议提示,要求你逐个确认。如果你希望实现真正的自动化,可以添加参数来跳过这些提示:
winget upgrade --all --accept-source-agreements --accept-package-agreements
注意: 通常不建议这样做。虽然这并不危险,但这些协议的存在是有意义的。某些软件包可能附带特殊的许可条款或来源要求,盲目接受可能会导致你忽略某些异常提示(例如某个包请求了未预期的系统提权)。
如果你确认可以安全地跳过确认提示,你可以将这个命令设置为完全自动化,从此彻底告别手动更新。你可以利用“任务计划程序”,让电脑在每次开机时自动检查并安装更新。
具体设置步骤:
点击系统搜索框,输入“任务计划程序”并打开。
在右侧操作栏中点击“创建基本任务...”。
将任务命名为“Winget 自动更新”,然后点击“下一步”。
触发器选择“当计算机启动时”,点击“下一步”。
操作选择“启动程序”,点击“下一步”。
在“程序或脚本”框中输入:powershell.exe
在“添加参数”框中输入:-Command "winget upgrade --all --accept-source-agreements --accept-package-agreements"
点击“完成”。
在任务列表中找到刚创建的任务,右键点击选择“属性”,进行以下调整:
常规选项卡: 勾选“使用最高权限运行”(因为安装更新通常需要管理员权限)。
触发器选项卡: 编辑启动触发器,勾选“延迟任务时间”并设置为 1 分钟(注:开机时网络可能尚未完全连接,而 winget 需要联网。如果不设置延迟,任务可能会静默失败。你可以根据网速将延迟调整为 30 秒或 2 分钟)。
条件选项卡: 如果你使用的是笔记本电脑,务必取消勾选“只有在计算机使用交流电源时才启动此任务”,否则在电池供电时更新会被静默跳过。
完成上述设置后,每次开机,系统都会在后台默默为你更新所有应用。
使用 winget 命令不仅能让 Windows 应用的更新变得轻松惬意,还能让你对电脑里安装了哪些软件了如指掌。在盘点时,你甚至可能会发现一些早已不再使用的软件,顺手将它们卸载,还能腾出宝贵的存储空间。
需要注意的是,winget 并不能覆盖 Windows 上所有应用(仍有少数软件未被收录)。不过,绝大多数主流软件都包含在内,对于大部分用户而言,使用此命令来管理日常更新已经完全足够。
好了,如果你还想了解更多关于 Windows 日常办公以及音视频重命名等方面的办公技巧,也不要忘记持续关注简鹿办公。