什么是 winget

1
用户可以在 Windows 10 和 Windows 11 计算机上使用 winget 命令行工具来发现、安装、升级、删除和配置应用程序。 此工具是 Windows 程序包管理器服务的客户端接口。

windows 下的包管理工具,类似于 Ubuntu 下的 apt.windows 上之前也有一些其他的包管理工具,像 Chocolatey Scoop. winget 是微软为 win10 开发的一款开源的软件包管理器,至少
需要 windows 10 1709(版本 16299)及以上版本

为什么要用包管理器

  • 降低安装维护软件的成本
  • 避免安装大量软件造成的路径污染
  • 不必查找和安装软件的其他依赖项
  • 避免捆绑和垃圾软件
  • 彻底地卸载

安装

打开 Microsoft Store,更新”应用安装程式”即可,安装完成后,打开 CMD 或者 powershell,输入 winget 查看命令

常用命令

winget 提供了常用的命令,如果不清楚的话,可以使用 winget [<命令>] -?查看帮助文档

  • install 安装给定的程序包
  • show 显示包的相关信息
  • source 管理程序包的来源
  • search 查找并显示程序包的基本信息
  • list 显示已安装的程序包
  • upgrade 升级给定的程序包
  • uninstall 卸载给定的程序包
  • hash 哈希安装程序的帮助程序
  • validate 验证清单文件
  • settings 打开设置或设置管理员设置
  • features 显示实验性功能的状态
  • export 导出已安装程序包的列表
  • import 安装文件中的所有程序包

有了 winget 之后,便不用从官网下载软件包,双击安装软件了.结合 powershell 可以实现一定程度的自动化操作

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
(
"Google.Chrome",
"Mozilla.Firefox",
"Discord.Discord",
"Microsoft.WindowsTerminal",
"CPUID.CPU-Z",
"hiyohiyo.CrystalDiskInfo",
"Git.Git",
"Microsoft.PowerToys",
"Valve.Steam",
"Spotify.Spotify",
"Microsoft.Teams",
"Ubisoft.Uplay",
"Microsoft.VisualStudioCode",
"WiresharkFoundation.Wireshark"
) | foreach {winget install -e --id $_}

或者也可以使用 winget 自带的 import/export 命令,在一台已经装好软件的电脑上使用 export 命令,在另一台电脑上使用 import 命令,
便可以克隆一台电脑的软件环境