winget 简介
WinGet 是微软官方以开源形式开发的一种命令行软件管理工具,使用户能够在 Windows 10、Windows 11 和 Windows Server 2025 计算机上发现、安装、升级、删除和配置应用程序。此工具是 Windows 程序包管理器服务的客户端接口,故可直接使用 winget 进行软件的安装、卸载、升级等操作。
winget 常用命令
- 列出 winget 的所有命令:winget --help
- 搜索:winget search <app_name>
- 安装:winget install <app_name>
- 卸载:winget uninstall <app_name>
- 更新:winget upgrade <app_name>
- 列出所有已安装的应用:winget list
- 查看某个应用的详细信息:winget show <app_name>
- 查看 MCP 配置信息:winget mcp
使用示例:
# 搜索 Git
winget search git.git
# 安装 Git
winget install --id Git.Git
# 安装 Git 并指定版本
winget install --id Git.Git --version 2.52.0
# 查看应用详细信息
winget show Git.Git
# 更新指定应用
winget upgrade Git.Git
# 详细模式更新指定应用
winget upgrade Git.Git --verbose
# 静默模式更新所有应用
winget upgrade --all --silent
# 卸载 Git
winget uninstall Git.Git常用软件安装:
# 安装谷歌浏览器
winget install Google.Chrome
# 安装火狐浏览器
winget install Mozilla.Firefox
# 安装 vscode
winget install Microsoft.VisualStudioCode
# 安装 git
winget install Git.Git
# 安装 python
winget install Python.Python.3.12
# 安装 nodejs
winget install OpenJS.NodeJSwinget 设置使用国内源
winget source 命令用于管理 winget 的源,包括添加、删除、查看、更新等。源提供了用于发现和安装程序包的数据。- winget source add 添加新来源
- winget source list 列出当前源
- winget source update 更新当前源
- winget source remove 删除当前源
- winget source reset 重置源
- winget source export 导出当前源
winget 添加设置使用国内镜像软件源
winget 默认使用微软 cdn 软件源,本身已经使用了 CDN,但是如果在国内访问速度慢,则可以选择设置使用国内镜像软件源。
以管理员身份打开 PowerShell,执行如下命令:
# 1. 删除官方软件源
winget source remove winget
# 2. 添加国内镜像源,如:
# 中科大镜像源
winget source add winget https://mirrors.ustc.edu.cn/winget-source --trust-level trusted
# 南京大学镜像源
winget source add nju https://mirror.nju.edu.cn/winget-source --trust-level trusted
# 3. 验证镜像源是否添加成功
winget source list
# 4. 更新所有软件源
winget source update
# 5. 搜索 Python 测试镜像源是否可正常使用
winget search Python.Python.3
# 6. 恢复默认设置
winget source reset wingetwinget 设置代理
# 1. 开启配置(需管理员权限的 PowerShell,这里直接使用了 sudo 命令,该命令需在开发者选项开启后可用)
sudo winget settings --enable ProxyCommandLineOptions
# 2. 设置默认代理示例
winget settings set DefaultProxy http://127.0.0.1:7089
# 3. 打开配置文件进行查看和修改
winget settings
# 4. 恢复默认设置
winget settings set DefaultProxywinget 高级用法
批量安装软件
可以创建一个软件列表文件,然后批量安装:
# 创建软件列表 apps.txt
echo Google.Chrome > apps.txt
echo Microsoft.VisualStudioCode >> apps.txt
echo Git.Git >> apps.txt
# 批量安装
winget install -e --id-file apps.txt导入导出已安装软件
# 导出已安装软件列表
winget export -o installed-apps.json
# 从列表文件批量安装
winget import -i installed-apps.json --ignore-unavailable使用交互模式
# 交互式搜索和安装
winget search --interactive
winget install --interactive <app_name>查看安装日志
# 查看详细日志
winget install --verbose --logs <app_name>管理软件版本
# 列出可用的软件版本
winget show <app_name> --versions
# 安装指定版本
winget install <app_name> --version x.y.z
# 阻止特定软件升级
winget pin add <app_name>
# 查看已阻止的软件
winget pin list
# 移除阻止
winget pin remove <app_name>winget 配置文件
winget 的配置文件位于:
%LOCALAPPDATA%\Packages\Microsoft.DesktopAppInstaller_8wekyb3d8bbwe\LocalState\settings.json常用配置项:
{
"installBehavior": {
"preferences": {
"interactivity": "silent"
}
},
"telemetry": {
"disable": false
},
"network": {
"Downloader": "Default"
}
}常见问题与解决方案
winget 命令不存在
Windows 10 版本需要至少 1709 版本,或者手动安装 App Installer
权限不足
某些软件安装需要管理员权限,以管理员身份运行 PowerShell
搜索不到软件
1. 更新软件源:winget source update
2. 使用确切的包名:winget search --exact <name>
3. 检查软件是否在 winget 仓库中
Scoop 与 winget 的主要区别
在 windows 平台上的命令行软件包管理工具还有较为有名的 Scoop、Chocolatey 等,其中 Scoop 使用较为广泛。
| 特性 | winget | Scoop |
|---|---|---|
| 开发者 | 微软官方 | 社区开源 |
| 安装位置 | 通常在 Program Files 或 AppData | 用户目录下 (~/scoop) |
| 权限需求 | 某些软件需要管理员权限 | 通常不需要管理员权限 |
| 软件源数量 | 官方主源 + 可自定义 | 官方 bucket + 社区 buckets |
| 适用场景 | 通用软件安装、系统级应用 | 开发工具、便携式软件 |
| 跨用户支持 | 支持所有用户 | 单用户安装 |
**选择建议**:
- 如果需要安装系统级应用或常用办公软件,推荐使用 **winget**
- 如果主要安装开发工具且希望便携,推荐使用 **Scoop**
- 两者可以共存,根据不同场景选择使用
扩展参考
- winget 官方文档
- winget 开源仓库
- winget 软件源仓库
- 中科大镜像源使用帮助
- 南京大学镜像源
- Scoop 国内源加速:Windows 命令行包管理工具 Scoop 的安装、使用与软件源定制