Windows 软件部署与管理的新标准:Winget
在传统的 Windows 环境中,软件的获取与维护往往伴随着繁琐的流程:打开浏览器搜索、甄别官方网站、下载安装包、手动点击“下一步”、以及不定期的手动检查更新。这种分散且低效的管理方式,在企业级部署或极客的生产力环境中,已经显得不再合时宜。
Winget (Windows Package Manager) 是微软官方推出的一款命令行包管理工具。它旨在将 Linux 系统中高效的软件管理体验引入 Windows,通过标准化的指令实现软件的搜索、安装、升级与卸载。
本文将介绍如何构建基于 Winget 的现代化软件管理工作流,并为习惯图形界面的用户提供可视化解决方案。
1. 环境部署与验证
对于大多数运行 Windows 10 (1709 及更高版本) 和 Windows 11 的设备,Winget 已经作为“应用安装程序”组件默认预装在系统中。
验证安装
请打开 PowerShell 或命令提示符 (CMD),输入以下命令:
winget -v
- 若返回版本号(例如
v1.8.1911):说明您的系统已就绪,可以直接使用。 - 若提示“无法识别...”:请前往 Microsoft Store 搜索并更新 “应用安装程序 (App Installer)”。
2. 核心工作流:命令行的高效实践
Winget 的核心优势在于“精准”与“批量”。建议养成使用 ID (唯一标识符) 进行操作的习惯,而非依赖模糊的名称匹配。
2.1 搜索软件 (Search)
在安装前,我们需要确认软件在源中的准确 ID。
winget search <关键词>
# 示例:查找 7-Zip
winget search 7zip
输出中 ID 一列即为我们需要关注的核心信息,例如 7zip.7zip。
2.2 精准安装 (Install)
获取 ID 后,使用标准命令进行安装。建议始终添加 -e 参数(Exact,精确匹配),防止因名称相似而安装错误的软件。
winget install --id <ID> -e
# 示例:安装 7-Zip
winget install --id 7zip.7zip -e
2.3 批量管理与更新 (Upgrade)
这是 Winget 最具价值的功能之一。它允许您一键检查并更新系统中所有已安装的软件(包括非 Winget 安装的软件)。
- 查看可更新列表:
winget upgrade - 一键更新所有软件:
winget upgrade --all
2.4 软件卸载 (Uninstall)
同样支持通过 ID 快速移除软件,无需进入控制面板。
winget uninstall --id <ID> -e
3. 可视化方案:部署 Winget 图形界面管理器
虽然命令行具备极高的效率,但在浏览软件库或进行复杂的版本管理时,图形用户界面 (GUI) 依然具有直观的优势。
官方目前仅提供命令行版本,但社区已经开发了成熟的第三方图形化前端。目前最推荐的是 UniGetUI (原名 WingetUI)。它能够索引 Winget、Scoop、Chocolatey 等多个包管理器的源,提供类似应用商店的操作体验。
安装 UniGetUI
您可以直接使用 Winget 命令来安装这款管理器:
winget install --id Marticliment.UniGetUI -e
使用体验
安装完成后打开 UniGetUI,您将获得以下能力:
- 软件发现:通过搜索框查找软件,界面会显示软件的图标、版本和来源。
- 批量操作:勾选多个软件,点击一次即可批量安装或卸载。
- 自动更新:可以在设置中配置自动扫描并静默更新软件,替代各软件自带的繁琐更新程序。
- 导入导出:支持将当前电脑的软件列表导出为 JSON 或 YAML 格式,便于在新电脑上快速还原工作环境。
4. 总结
Winget 并非仅仅是一个下载工具,它是 Windows 软件生态走向标准化、自动化的基础设施。
- 对于个人用户:它消除了寻找安装包的安全风险,提供了一键维持系统软件最新状态的便利。
- 对于IT专业人员:它提供了可脚本化的部署能力,使得在新机器上通过一行代码安装数十个必备软件成为可能。
建议从今天开始,尝试使用 winget install 替代传统的下载安装习惯,构建更加整洁、可控的 Windows 软件环境。