winget 是 Windows 的包管理工具,Windows 11 里通常已自带(来源于 App Installer 组件)。如果你想把“装软件”变成可复用的脚本流程,第一步是确认它能跑、并理解它的基本概念:包(package)、来源(source)、升级(upgrade)。
在 Windows Terminal 或 PowerShell 里执行:
winget --version
若提示命令不存在,优先到 Microsoft Store 更新/安装“应用安装程序(App Installer)”,或参考官方文档排查(参考链接:https://learn.microsoft.com/windows/package-manager/winget/)。
日常最常用的 4 个动作就是:找包、装包、升包、删包。建议先从“搜索”开始确认包名(Id),再执行安装或升级。
搜索软件(示例:VS Code):
winget search vscode
安装(推荐用 Id,更稳定):
winget install --id Microsoft.VisualStudioCode
升级所有可升级软件:
winget upgrade --all
卸载(先 list 看清楚再卸载):
winget list
winget uninstall --id Microsoft.VisualStudioCode
补充:如果你在公司环境/多台机器上用,建议把安装命令固定成“Id + 静默参数”的形式,并在文档里写清楚来源与版本要求,避免同名软件装错。
winget 的一个高频用法是把当前电脑的软件清单导出成文件,新电脑拿到文件后批量安装,从而把“装机流程”变成可复现的配置。
导出软件清单(JSON):
winget export -o winget-apps.json
导入并批量安装:
winget import -i winget-apps.json
建议实践小技巧:
1) 导出后先打开 JSON,确认包含你真正想迁移的软件(有些商店应用/驱动类内容可能不会被完整还原)。
2) 对于需要登录、授权或有特殊安装向导的软件,导入只是“帮你把安装跑起来”,后续仍要按软件自身流程完成配置。
3) 把这个文件放进你的同步盘/代码仓库(私有),并在文件旁边写一个 README,记录“必装/可选/按需”的分层清单。
winget 的包来源(source)决定了你从哪里安装软件。你可以查看当前来源:
winget source list
如果你对某个包的可信度有疑问,建议先去项目主页核对(例如 winget-cli 的官方仓库:https://github.com/microsoft/winget-cli),并在安装前检查发布者信息与包标识,避免装到“长得很像”的第三方包。
你可以把下面这套流程当成每周一次的小维护:
winget upgrade
先查看有哪些可升级软件,再决定是否全量升级:
winget upgrade --all
升级完成后导出一次最新清单,保证“装机清单”跟得上你日常使用:
winget export -o winget-apps.json
这样一来,新电脑/重装系统时,你只需要准备好这个文件,就能把主要软件快速装齐,把时间留给真正重要的配置与工作流优化。