Winget用法
突然发现windows有自带的包管理器,也就是Winget,长见识了。记录下基本用法。
一、安装
不用安装,windows自带(实际只支持Windows 10 版本 1809以上版本),可以使用winget --help查看帮助(winget的命令和子命令都可以用--help和-?参数查看帮助),使用winget -v查看版本。
如果没有安装或者被删了,可以在微软商店下载。ps:如果商店打不开,可以重置Microsoft应用商店缓存:按 Windows 徽标键 + R 打开“ 运行 ”对话框,键入 “wsreset.exe”,然后选择“ 确定”。
二、软件源
| 子命令 | 作用 |
|---|---|
| add | 添加新来源 |
| list | 列出当前源 |
| remove | 删除当前源 |
| edit | 编辑当前源 |
| remove | 删除当前源 |
| reset | 重置当前源,注意如果重置源使用的名称是winget,则值会被重置回官方源地址,如果是第三方源则会被删除 |
以添加中科大源为例,注意修改源的操作需要管理员权限(可以用win+R打开“运行”窗口,输入“powershell”,按下Ctrl+shift+enter进入管理员模式)
PS C:\Windows\system32> winget source list名称 参数 显式---------------------------------------------------------------msstore https://storeedgefd.dsx.mp.microsoft.com/v9.0 falsewinget https://cdn.winget.microsoft.com/cache falsewinget-font https://cdn.winget.microsoft.com/fonts truePS C:\Windows\system32> winget source add ustc https://mirrors.ustc.edu.cn/winget-source --trust-level trusted #trusted意味该源是可信任的,否则每次安装软件ms都会发警告正在添加源: ustc -> https://mirrors.ustc.edu.cn/winget-source ██████████████████████████████ 100%完成PS C:\Windows\system32> winget source list名称 参数 显式---------------------------------------------------------------ustc https://mirrors.ustc.edu.cn/winget-source false #中科大源msstore https://storeedgefd.dsx.mp.microsoft.com/v9.0 false #false表示隐式下载,当为true时,安装包需要显式指定(-s)winget https://cdn.winget.microsoft.com/cache falsewinget-font https://cdn.winget.microsoft.com/fonts true注意如果使用remove移除时不要少了source子命令,例如winget remove winget,否则会直接卸载winget!
三、查看包信息
show查看包的信息,默认直接按名字精确匹配(弱视大小写)。如果有多个源匹配到时,会以列表列出简要信息(名字,ID,源)。如果指定源匹配到时,会列出详细信息,否则返回未匹配到
search查找包的信息,但默认模糊匹配。
xPS C:\Windows\system32> winget show winscp 找到多个与输入条件匹配的程序包。请修改输入。名称 ID 源---------------------------WinSCP WinSCP.WinSCP ustcWinSCP WinSCP.WinSCP wingetPS C:\Windows\system32> winget show winscp -s winget # -s表示显示指定源已找到 WinSCP [WinSCP.WinSCP]版本: 6.7发布者: Martin Prikryl发布服务器 URL: https://winscp.net/发布服务器支持 URL: https://winscp.net/docs/support作者: Martin Prikryl。。。。。。
PS C:\Windows\system32> winget search winscp # search模糊匹配名称 ID 版本 匹配 源------------------------------------------------------------WinSCP WinSCP.WinSCP 6.7 ustcWinSCP WinSCP.WinSCP 6.7 wingetHostpad Hostpad.Hostpad 1.1.0 Tag: winscp ustcanySCP macnev2013.anySCP 0.11.1 Tag: winscp ustcWinSCP RC WinSCP.WinSCP.RC 5.18.5- Tag: winscp ustcHostpad Hostpad.Hostpad 1.1.0 Tag: winscp wingetanySCP macnev2013.anySCP 0.11.1 Tag: winscp wingetWinSCP RC WinSCP.WinSCP.RC 5.18.5- Tag: winscp wingetWinSCP Beta WinSCP.WinSCP.Beta 6.6.1.beta ustcWinSCP Beta WinSCP.WinSCP.Beta 6.6.1.beta winget四、查看已安装、安装、更新、删除
list、install、update、remove参数都差不多,使用-s选择源,id,name按需要匹配
xxxxxxxxxxPS C:\Windows\system32> winget list --name winscp # --name按名称匹配,--id按ID匹配名称 ID 版本 可用 源------------------------------------------WinSCP 6.5.5 WinSCP.WinSCP 6.5.5 6.7 ustc
PS C:\Windows\system32> winget list -e --name winscp # -e表示精确匹配找不到与输入条件匹配的已安装程序包。
PS C:\Windows\system32> winget list python名称 ID 版本 可用 源-----------------------------------------------------------------------------Python Install Manager Python.PythonInstallManager 25.2.240.0 26.4.240.0 ustcPython Launcher Python.Launcher < 3.14.7 3.15.2 ustcPython 3.14.2 (64-bit) Python.Python.3.14 3.14.2 3.14.10 ustcPython 3.11.9 (64-bit) Python.Python.3.11 3.11.9 ustcPyCharm 2025.3.3 JetBrains.PyCharm 2025.3.3 2026.3 ustc
PS C:\Windows\system32> winget update winscp -s ustc已找到 WinSCP [WinSCP.WinSCP] 版本 6.7此应用程序由其所有者授权给你。Microsoft 对第三方程序包概不负责,也不向第三方程序包授予任何许可证。正在下载 https://sourceforge.net/projects/winscp/files/WinSCP/6.7/WinSCP-6.7-Setup.exe/download ██████████████████████████████ 12.5 MB / 12.5 MB已成功验证安装程序哈希正在启动程序包安装...已成功安装
PS C:\Windows\system32> winget list --name winscp 名称 ID 版本 源-----------------------------------WinSCP 6.7 WinSCP.WinSCP 6.7 ustc