器→工具, 工具软件

Windows软件管理工具WinGet、Chocolatey与Scoop

钱魏Way · · 9 次浏览

WinGet简介

作为微软官方出品的 Windows 包管理器,WinGet 旨在让 Windows 上的软件管理像在 Linux 中使用 apt或 yum一样高效、便捷。它通过命令行帮你发现、安装、升级、卸载和配置应用程序,特别适合开发者和IT管理员用于自动化部署和环境配置。

核心功能与基本使用

WinGet 的功能非常实用,以下是一些最常用的命令示例。

搜索软件

在安装之前,通常先搜索一下。使用 winget search <软件名或关键词>来查找。例如,寻找 Visual Studio Code:winget search “Visual Studio Code”。搜索结果会列出软件的名称、ID、版本和来源,其中 ID 是安装时最准确的标识符。

安装软件

找到后使用 winget install命令安装。强烈建议使用软件包ID 以确保安装准确无误:

winget install Microsoft.VisualStudioCode

一些有用的安装参数:

  • –silent: 静默安装,没有用户交互界面,适合脚本自动化。
  • –accept-package-agreements: 自动接受软件许可协议。
  • –source: 指定来源,例如从微软商店安装:–source msstore。

更新软件

保持软件最新有助于安全。查看可更新软件:winget upgrade。升级特定软件:winget upgrade <包ID>。一键升级所有软件(请谨慎使用):winget upgrade –all。

卸载软件

彻底清理软件使用 winget uninstall <包ID>。同样可以先通过 winget list查看已安装软件列表来找到准确的包ID。

导入/导出软件列表

这是 WinGet 非常强大的功能,特别适合快速配置新电脑或统一多台机器环境。

  • 导出当前系统已安装的软件列表到一个 JSON 文件:

winget export -o my_apps.json

  • 导入该 JSON 文件,自动安装其中列出的所有软件:

winget import -i my_apps.json –accept-package-agreements

进阶技巧与配置

  • 使用配置文件深度定制:WinGet 允许你通过一个json文件来深度定制行为。使用 winget settings命令可以打开这个配置文件进行编辑。你可以在这里设置默认的安装行为(如优先为用户安装还是为整个机器安装)、进度条样式、网络下载器等。
  • 为国内网络环境换源:如果你从默认源下载软件速度较慢,可以将其替换为国内镜像源来提升下载速度,例如中国科学技术大学开源软件镜像源。

# 移除默认源

winget source remove winget

# 添加国内镜像源

winget source add winget https://mirrors.ustc.edu.cn/winget-source

集成到自动化脚本中:你可以编写一个简单的批处理文件(.bat)或 PowerShell 脚本,将一系列 WinGet 安装命令放在里面,实现新电脑的一键环境部署。

UniGetUI

对于不习惯命令行的用户,有几款非常出色的工具可以为 Winget 披上图形化的“外衣”,让软件管理变得像在应用商店里操作一样简单直观。UniGetUI 是目前为 Winget 提供图形化界面最受推崇的解决方案 。它已经完全取代了早期的 WingetUI 项目,并进行了大幅增强。

核心功能

  • 一键管理:通过直观的界面,轻松完成软件的搜索、安装、更新和卸载,无需记忆任何命令。
  • 批量操作:可以同时选择多个软件进行安装或更新,大大提升了效率。
  • 软件发现:内置的“发现软件包”功能就像一个软件商店,帮助你探索新的应用程序。
  • 备份与恢复:支持导出已安装的软件列表,在重装系统或配置新电脑时,可以快速一键恢复所有软件,非常方便。
  • 详细信息:在安装前可以查看软件的许可证、发布者、文件大小等详细信息。

下载链接:GitHub – marticliment/UniGetUI: UniGetUI: The Graphical Interface for your package managers. Could be terribly described as a package manager manager to manage your package managers

Chocolatey简介

Chocolatey 是一款专为 Windows 系统设计的命令行软件包管理器,它旨在将 Linux 世界(如 apt或 yum)和 macOS 世界(如 Homebrew)中高效、自动化的软件管理体验带到 Windows 平台。自 2011 年由 Rob Reynolds 创建以来,它已成为 Windows 社区中广受欢迎的工具,帮助用户通过简单的命令实现软件的安装、更新和卸载。

核心功能与优势

Chocolatey 的强大之处在于它能将繁琐的软件管理任务变得简单高效。

  • 简化软件管理:你不再需要打开浏览器,搜索软件官网,下载安装程序并手动点击下一步。只需一条命令,如 choco install vscode,Chocolatey 就会自动下载并静默安装指定的软件。
  • 自动化更新:使用 choco upgrade all可以一次性更新所有已安装的软件,确保你的开发环境和工具始终保持最新状态。
  • 依赖关系处理:在安装某些软件时,Chocolatey 能够自动识别并安装其依赖的其他组件,省去了手动配置的麻烦。
  • 批量部署:对于开发者或系统管理员,可以编写一个包含所有所需软件的脚本(如 choco install git python3 nodejs),在新系统或新机器上快速搭建出一致的开发环境,极大提升了效率。

基础命令

以下命令通常需要在管理员权限下运行:

  • 搜索软件:choco search <软件名>(例如 choco search firefox)。
  • 安装软件:choco install <软件名>(例如 choco install googlechrome -y,使用 -y参数可跳过确认提示,实现无人值守安装)。
  • 更新软件:更新特定软件 choco upgrade <软件名>,或一次性更新所有软件 choco upgrade all。
  • 卸载软件:choco uninstall <软件名>。
  • 列出已安装软件:choco list –local-only。

进阶技巧与生态

  • 软件包类型:Chocolatey 的软件包有不同的后缀,表示不同的封装类型。例如,.install包通常通过原生安装程序安装,会出现在控制面板的“卸载程序”列表中;而 .portable包通常是绿色版软件。在选择时,一般推荐优先选择无后缀或 .install 的包 。
  • 配置与源管理:你可以通过 choco source命令添加、禁用或移除软件源。在企业环境中,通常会搭建内部私有源以提升安全性和控制力 。
  • 企业级支持:Chocolatey 提供商业版本 Chocolatey for Business,为企业用户提供图形化界面、更强大的部署、管理和安全功能 。

ChocolateyGUI

ChocolateyGUI 是 Chocolatey 包管理器的官方图形用户界面(GUI)。它允许用户通过直观的图形界面来管理 Chocolatey 包,而无需记忆命令行命令。

主要功能:

  • 浏览软件包:可以浏览 Chocolatey 社区仓库(或你自己配置的源)中的数千个软件包,并查看软件包的详细信息,如版本、描述、下载量等。
  • 安装软件:点击即可安装软件,无需记住具体的安装命令。
  • 升级软件:可以查看已安装软件中哪些有可用更新,并一键升级。
  • 卸载软件:通过图形界面卸载已安装的软件。
  • 管理软件源:可以添加、删除或修改 Chocolatey 源(包括官方源和自定义源)。
  • 查看软件详情:在安装前可以查看软件包的详细信息,包括版本、作者、许可证等。
  • 依赖管理:在安装过程中会自动处理依赖关系。

参考链接:

Scoop简介

Scoop 是一款专为 Windows 系统设计的开源命令行包管理工具,它旨在让软件的安装、更新、卸载和管理过程变得像在 Linux 或 macOS 系统中使用包管理器一样简单高效。

下表为Scoop 的核心概览,特别是它与传统软件安装方式的显著区别。

特性维度 Scoop 方式 传统 Windows 安装方式
安装流程 一行命令(如 scoop install git),自动完成 访问官网、下载安装包、图形界面点击下一步、可能附带捆绑软件
环境变量 自动配置,安装后立即可用 经常需要手动配置,易出错
权限要求 多数软件可在非管理员权限下安装 经常需要管理员权限,触发 UAC 弹窗
软件管理 集中管理,轻松更新/卸载所有软件 分散管理,更新卸载麻烦,易残留文件
系统清洁度 软件隔离安装,几乎不污染系统或注册表 文件分散,注册表冗杂,遗留大量“垃圾”

核心功能与优势

除了上表所体现的便捷性,Scoop 还具备以下强大功能:

  • 自动依赖管理:当你安装某个软件时,Scoop 会自动解析并安装该软件所依赖的其他库或工具,无需用户手动干预。
  • 多版本软件管理:对于需要不同版本的开发工具(如 Python、js),Scoop 可以轻松安装多个版本并让你快速切换,非常适合项目开发环境。
  • 丰富的软件仓库:Scoop 通过一种名为 “bucket” 的机制来组织软件列表。默认的 main仓库包含大量命令行工具。你可以通过添加其他官方或社区维护的 bucket(如 extras,包含大量图形界面软件)来极大地扩展可用软件的范围。
  • 卸载彻底:使用 scoop uninstall命令可以干净地移除软件及其相关文件,有效解决软件卸载残留的问题。

安装与基础使用

  • 前置条件:确保你的系统是 Windows 7 及以上版本(推荐 Win10/11),并且 PowerShell 版本在1 以上。
  • 安装步骤:
    • 以管理员身份打开 PowerShell。
    • 设置执行策略以允许脚本运行:Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser。
    • 运行安装命令:irm get.scoop.sh | iex。
    • (可选)推荐进行自定义安装,例如将 Scoop 安装到 D 盘以避免占用系统盘空间:irm get.scoop.sh -outfile ‘install.ps1’,然后运行 .\install.ps1 -ScoopDir ‘D:\Scoop’ -ScoopGlobalDir ‘D:\ScoopGlobalApps’。
  • 基础命令:
    • 搜索软件:scoop search <软件名>
    • 安装软件:scoop install <软件名>
    • 更新软件:scoop update <软件名>或更新所有软件 scoop update *
    • 卸载软件:scoop uninstall <软件名>
    • 列出已安装软件:scoop list

进阶技巧与配置

  • 添加常用仓库:安装后,强烈建议添加官方的 extras仓库,它包含了大量流行的图形界面软件(如 VSCode、Postman):scoop bucket add extras。
  • 使用多线程下载加速:安装 aria2后,Scoop 会利用它进行多连接下载,大幅提升速度:scoop install aria2。
  • 配置代理或镜像源:如果你在国内网络环境下遇到下载慢的问题,可以为 Scoop 配置代理或切换至国内镜像源(如清华大学镜像)来提升下载体验。

Scoop Desktop

Scoop Desktop 是一款为 Windows 包管理器 Scoop 设计的图形用户界面(GUI)工具。它让用户可以通过直观的图形化窗口来管理和操作 Scoop,大大降低了使用门槛,尤其适合不习惯命令行的用户。

主要功能亮点

  • 便捷的软件管理:在 Scoop Desktop 的界面中,你可以轻松查看已安装的所有软件、检查可用更新,并进行批量更新或卸载。无需手动输入 scoop update或 scoop uninstall等命令。
  • 直观的Bucket管理:通过 GUI 可以方便地添加、移除或查看不同的 Scoop buckets(如 extras、nirsoft、java等),这些 buckets 扩展了可安装软件的范围。
  • 清晰的软件展示:以清晰的列表形式展示软件名称、版本、来源桶等信息,并提供搜索过滤功能,让你对已安装和可用的软件一目了然。

参考链接; Scoop

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注