Windows 自带的秘密武器:winget 基本配置与使用
- 前端开发
- 10天前
- 7热度
- 0评论
目录
[隐藏]
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.NodeJS
winget 设置使用国内源
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 winget
winget 设置代理
# 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 DefaultProxy
winget 高级用法
批量安装软件
可以创建一个软件列表文件,然后批量安装:
# 创建软件列表 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
搜索不到软件
- 更新软件源:
winget source update - 使用确切的包名:
winget search --exact <name> - 检查软件是否在 winget 仓库中
Scoop 与 winget 的主要区别
在 windows 平台上的命令行软件包管理工具还有较为有名的 Scoop、Chocolatey 等,其中 Scoop 使用较为广泛。
| 特性 | winget | Scoop |
|---|---|---|
| 开发者 | 微软官方 | 社区开源 |
| 安装位置 | 通常在 Program Files 或 AppData | 用户目录下 (~/scoop) |
| 权限需求 | 某些软件需要管理员权限 | 通常不需要管理员权限 |
| 软件源数量 | 官方主源 + 可自定义 | 官方 bucket + 社区 buckets |
| 适用场景 | 通用软件安装、系统级应用 | 开发工具、便携式软件 |
| 跨用户支持 | 支持所有用户 | 单用户安装 |
选择建议:
- 如果需要安装系统级应用或常用办公软件,推荐使用 winget
- 如果主要安装开发工具且希望便携,推荐使用 Scoop
- 两者可以共存,根据不同场景选择使用