Winget 命令怎么用?看完这篇文章就全懂了!

一、前言

1.1 简介

Winget(Windows Package Manager)是微软官方推出的命令行包管理工具,对标 Linux 系统的 apt、macOS 系统的 Homebrew,可实现软件的快速搜索、安装、更新、卸载及批量管理,无需手动下载安装包,大幅提升 Windows 系统软件管理效率,适用于开发者、IT 管理员及命令行爱好者日常使用。

1.2 适用场景

  • 开发者快速部署开发工具(如 VS Code、Python、Node.js 等),简化开发环境搭建流程;

  • 批量安装/更新/卸载软件,适合新电脑配置、办公环境统一部署等场景;

  • 命令行爱好者替代图形化安装流程,减少弹窗干扰,简化操作步骤;

  • 软件版本精准管理,可快速安装、切换指定版本软件,适配特定使用需求;

  • 通过配置文件实现开发环境的自动化、可重复部署,提升配置一致性。

1.3 支持系统

  • Windows 11:默认预装,无需额外安装,开箱即可使用;

  • Windows 10:需升级至版本 1709 及以上,部分旧版本需手动安装「App Installer」后方可使用;

  • Windows Server 2025:作为系统组件,通过更新传递获取并更新;

  • 系统架构:适配 x64、x86、ARM64 等主流架构。

二、安装与验证

2.1 安装方式(按推荐优先级排序)

2.1.1 默认预装(推荐,适用于 Windows 11/部分 Windows 10)

Windows 11 及 Windows 10 21H1 以上版本通常已预装 Winget,无需手动操作,直接进入「安装验证」环节即可确认是否可用。

2.1.2 Microsoft Store 手动安装(适用于未预装的 Windows 10/11)

  1. 按 Win + S 键打开搜索框,输入“Microsoft Store”并打开应用商店;

  2. 在搜索栏中输入“App Installer”,找到对应应用(若搜索不到,可直接访问官方链接:https://apps\.microsoft\.com/detail/9NBLGGH4NNS1);

  3. 点击「获取」或「安装」,登录微软账户后等待自动下载安装完成;

  4. 安装完成后,重启命令行工具(PowerShell/CMD),即可使用 Winget。

2.1.3 手动下载安装(适用于无法访问 Microsoft Store 的场景)

部分企业版、教育版或 LTSC 版本的 Windows 系统可能禁用了 Microsoft Store,需手动下载安装包及依赖项,步骤如下:

  1. 下载主安装包:访问 Winget 的 GitHub Releases 页面,在最新版本的 Assets 部分,下载 Microsoft\.DesktopAppInstaller\_8wekyb3d8bbwe\.msixbundle 文件(可根据系统架构选择对应版本);

  2. 下载依赖项:

    • VCLibs(必需):从微软官方链接下载对应系统架构的版本;

    • UI.Xaml(Windows 10 必需):访问 NuGet Gallery 下载 Microsoft.UI.Xaml.2.8.x 包,将文件扩展名改为 .zip 并解压,在 tools/AppX/x64/Release/ 目录下找到 Microsoft\.UI\.Xaml\.2\.8\.appx 文件;

  3. 安装依赖与主程序:以管理员身份打开 PowerShell,依次执行以下命令(将路径替换为实际下载位置):

     `\# 安装 VCLibs 依赖

    Add-AppxPackage -Path "C:\Downloads\Microsoft.VCLibs.x64.14.00.Desktop.appx" # 安装 UI.Xaml 依赖(Windows 10 系统) Add-AppxPackage -Path "C:\Downloads\Microsoft.UI.Xaml.2.8.appx" # 安装 Winget 主程序 Add-AppxPackage -Path "C:\Downloads\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe.msixbundle"`

2.1.4 特殊场景安装(Windows 沙盒/LTSC 版本)

  • Windows 沙盒:需通过 PowerShell 安装 WinGet 模块并引导安装,具体命令如下:

      `$progressPreference = \&\#39;silentlyContinue\&\#39;

    Install-PackageProvider -Name NuGet -Force | Out-Null Install-Module -Name Microsoft.WinGet.Client -Force -Repository PSGallery | Out-Null Repair-WinGetPackageManager -AllUsers`

  • LTSC 版本:优先启用 Microsoft Store 后按 2.1.2 方法安装;无法启用 Store 则按 2.1.3 方法手动安装所有组件。

2.2 安装验证

  1. 打开管理员 PowerShell 或 CMD(推荐管理员模式,避免权限不足问题);

  2. 执行命令:winget \-\-version

  3. 验证结果:

    • 成功:输出版本号(如 v1.6.3482、v1.7.xxxx),说明安装完成;

    • 失败:提示“不是内部或外部命令”,需重新安装「App Installer」并重启命令行,或检查依赖项是否安装完整。

三、核心命令详解(必学)

3.1 命令格式规范

所有 Winget 命令遵循统一语法结构,无需复杂记忆,格式如下:winget \<命令\> \(参数\) \(软件标识/路径\)说明: 命令:核心操作(如 search、install、upgrade 等);参数:可选,用于细化操作(如 --silent 静默安装、--version 指定版本);软件标识:可使用「软件名称」或「官方 ID」(ID 唯一,推荐使用,避免重名冲突)。

3.2 常用核心命令(含示例,重点掌握)

操作场景命令语法示例命令详细说明
查看版本(验证安装)winget --versionwinget --version快速验证 Winget 是否安装成功,输出版本号即正常
查看帮助(查询命令)winget --help 或 winget <命令> --helpwinget install --help查看所有核心命令,或单个命令的详细用法、参数说明
搜索软件winget search <关键词/软件名>winget search vscode、winget search 微信搜索匹配的软件,输出名称、ID、版本、来源等信息,用于获取软件官方 ID(安装时精准匹配)
安装软件(默认)winget install <软件ID/名称>winget install Microsoft.VisualStudioCode推荐用软件 ID 安装(避免重名),安装过程会有弹窗提示,需手动确认
静默安装(推荐)winget install <软件ID> --silentwinget install WeChat.WeChat --silent无弹窗干扰,后台自动完成安装,适合批量安装或不想手动操作的场景
安装指定版本winget install <软件ID> --version <版本号>winget install Python.Python.3.11 --version 3.11.4需先通过 search 命令确认软件支持的版本号,适配特定版本需求
更新单个软件winget upgrade <软件ID/名称>winget upgrade Microsoft.VisualStudioCode将指定软件更新至最新版本,需确认更新操作
更新所有软件winget upgrade --allwinget upgrade --all批量更新系统中所有可通过 Winget 管理的软件,每个更新需手动确认(高效便捷)
卸载软件winget uninstall <软件ID/名称>winget uninstall Microsoft.VisualStudioCode卸载指定软件,部分软件需手动确认卸载操作
查看已安装软件winget list(支持筛选)winget list、winget list --name "VS Code"列出系统中所有可通过 Winget 管理的软件,支持按名称、ID 筛选;添加 --upgrade-available 可只显示需更新的软件
导出软件列表(备份)winget export -o <导出路径/文件名.json>winget export -o C:\桌面\软件列表.json导出通过 Winget 安装的软件列表,用于备份或新电脑快速部署
导入软件列表(批量安装)winget import -i <导入文件路径.json>winget import -i C:\桌面\软件列表.json从导出文件批量安装软件,新电脑配置必备,节省部署时间
更新软件源缓存winget source updatewinget source update同步微软官方软件源,获取最新软件列表,解决搜索不到软件的问题

3.3 关键命令补充说明

3.3.1 搜索命令(winget search)

核心作用:查找目标软件的官方 ID,避免因软件名称重复(如“微信”有普通版和开发者工具)导致安装错误。 示例:搜索“微信”并筛选结果,执行 winget search wechat,输出结果解读:

名称ID版本
微信WeChat.WeChat3.9.5.81winget
微信开发者工具Tencent.wechat-devtools1.06.2309010winget

安装时优先使用“ID”(如 WeChat.WeChat),确保安装目标精准无误。

3.3.2 安装命令(winget install)

补充参数说明:

  • --install-dir:指定软件安装路径(部分软件支持),示例:winget install Microsoft\.VisualStudioCode \-\-install\-dir \&\#34;D:\\Software\\VS Code\&\#34;

  • --accept-package-agreements:自动接受软件许可协议,无需手动确认,结合 --silent 可实现完全无人值守安装;

  • --force:强制安装,适用于软件已安装但 Winget 未识别,需重新安装的场景。

3.3.3 列表命令(winget list)

常用筛选参数:

  • --name:按软件名称筛选,示例:winget list \-\-name \&\#34;微信\&\#34;

  • --id:按软件 ID 筛选,示例:winget list \-\-id WeChat\.WeChat

  • --upgrade-available:只显示有更新可用的软件,示例:winget list \-\-upgrade\-available

  • --exact:精确匹配筛选关键词,区分大小写,避免模糊匹配。

四、进阶配置(可选,提升使用效率)

4.1 Winget 配置文件(YAML 格式)

Winget 支持通过 YAML 格式的配置文件,将软件安装、系统设置、依赖项配置合并为一个命令,实现开发环境的自动化、可重复部署,适用于团队协作或多设备配置场景,需 Winget 版本 v1.6.2631 及以上支持。

4.1.1 配置文件核心优势

  • 无人值守安装:输入 winget configure 命令,自动完成所有软件安装和系统配置;

  • 可靠可重复:预定义软件版本、依赖项和系统设置,避免手动配置出错;

  • 支持协作:可托管在 GitHub 等平台,方便团队共享和修改;

  • 声明性配置:无需关注操作顺序,只需定义最终所需的系统状态,Winget 自动完成适配。

4.1.2 配置文件使用方法

  1. 获取配置文件:可从微软官方 DSC 存储库(https://aka\.ms/dsc\.yaml)下载示例文件,或自行编写;

  2. 运行配置文件:

    • 方法 1:双击配置文件(.yaml 格式),自动调用 Winget 执行配置;

    • 方法 2:在命令行执行命令:winget configure \-f \<配置文件路径\.yaml\>

  3. 注意事项:运行前需验证配置文件可信度,避免恶意配置;部分配置需管理员权限。

4.2 启用实验性功能

Winget 会持续推出新功能(如批量卸载、自定义软件源等),可通过以下步骤启用实验性功能:

  1. 打开 Winget 配置文件(路径:%LOCALAPPDATA%\Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState\settings.json);

  2. 在文件中添加实验性功能配置(示例,具体参数可参考官方文档):

     `\{

    &#34;experimentalFeatures&#34;: { &#34;uninstallAll&#34;: true, &#34;customSources&#34;: true } }`

  3. 保存文件并重启命令行,即可使用对应的实验性功能。

4.3 自定义软件源

默认情况下,Winget 使用微软官方软件源,可添加自定义软件源(如企业内部软件源),命令如下:

  • 添加软件源:winget source add \-\-name \&lt;源名称\&gt; \-\-arg \&lt;源地址\&gt;

  • 查看所有软件源:winget source list

  • 删除软件源:winget source remove \-\-name \&lt;源名称\&gt;

  • 注意:自定义软件源需符合 Winget 规范,否则可能无法正常搜索和安装软件。

五、常见问题与解决方案

问题现象可能原因解决方案
输入 winget 命令提示“不是内部或外部命令”未安装 App Installer;安装后未重启命令行;环境变量未配置1. 重新安装 App Installer;2. 重启 PowerShell/CMD;3. 检查环境变量 PATH 中是否包含 Winget 安装路径
搜索不到目标软件软件源未更新;软件未收录到 Winget 官方源;关键词输入错误1. 执行 winget source update 更新缓存;2. 确认软件名称/ID 正确;3. 尝试添加自定义软件源
安装软件提示“权限不足”未以管理员身份运行命令行;软件安装路径需要管理员权限1. 以管理员身份打开 PowerShell/CMD;2. 更换软件安装路径(如 D 盘非系统目录)
静默安装失败,普通安装正常部分软件不支持静默安装;软件安装包有特殊交互要求1. 取消 --silent 参数,使用普通安装;2. 确认软件是否支持静默安装(参考软件官方文档)
导入软件列表时部分软件安装失败软件 ID 已更新;软件源中无对应版本;网络问题导致下载失败1. 执行 winget source update;2. 用 search 命令确认软件最新 ID;3. 检查网络连接,重新执行导入命令
Winget 配置文件运行失败配置文件语法错误;依赖项缺失;无管理员权限1. 检查 YAML 语法是否正确;2. 确认依赖项已安装;3. 以管理员身份运行配置命令;4. 验证配置文件可信度
提示“无法安装,因为找不到依赖项”未安装 VCLibs、UI.Xaml 等必备依赖;依赖项版本不匹配按 2.1.3 方法重新安装对应依赖项,确保版本与系统架构匹配

六、注意事项

  • 权限说明:部分操作(如安装到系统目录、批量更新)需以管理员身份运行命令行,否则可能失败;以管理员身份运行时,需仅安装信任的软件,避免安全风险。

  • 软件来源:Winget 官方源的软件均经过微软验证,安全性有保障,不建议添加未知来源的自定义软件源,避免安装恶意软件。

  • 版本兼容:部分命令(如 configure)需特定 Winget 版本支持,若无法使用,可通过 Microsoft Store 更新 App Installer 升级 Winget。

  • 日志查看:若操作失败,可执行 winget \-\-open\-logs 打开日志文件,排查失败原因。

  • 首次登录:Windows 10/11 首次登录后,Winget 可能需要一段时间才能完成注册,若安装后无法使用,可执行 Add\-AppxPackage \-RegisterByFamilyName \-MainPackage Microsoft\.DesktopAppInstaller\_8wekyb3d8bbwe 手动注册。