如何自动更新所有本地安装的 Chocolatey 软件包?

开他林可以自动更新 Chocolatey 软件包并将其推送到 Chocolatey.org,但是如何自动更新所有本地安装的 Chocolatey 软件包呢?

48821 次浏览

尝试 choco upgrade all -y(或 cup all -y)。可以创建一个计划任务,在晚上运行,这将做到这一点。

注意: 这个答案与一些相当老版本的 Chocolatey (0.9.8或更老版本)有关。

您应该知道,Chocolatey实际上是 不会更新已经安装的软件包(既不是 cup all也不是 cup <package>) ,而是 在旧版本之外安装新版本。因此,您的系统上最终会有一堆以前安装的软件包版本。除了使用 Chocolatey的最新版本外,目前还没有办法卸载该软件包的特定版本。

更新: 根据 @ ferventcoder 的评论巧克力的版本 0.9.9 + 现在做一个真正的更新!实际上这是巨大的进步。版本0.9.8和下面的代码只执行前面描述的安装。有关新 C # 客户端的详细信息,请参阅 释放通知书

cup all -y

或者

chocolatey update all -y

对于 choco v0.10.1 + ,请使用:

choco upgrade

Https://github.com/chocolatey/choco/wiki/commandsupgrade

从 v1.0.0开始,不推荐使用 choco update:

DEPRECATION NOTICE - choco update is deprecated and will be removed or
replaced in version 1.0.0 with something that performs the functions
of updating package indexes. Please use `choco upgrade` instead.

另一种选择是使用 巧克力升级全部启动软件包,发出:

choco install choco-upgrade-all-at-startup -y

安装完成后,将创建一个计划任务,该任务在计算机引导时升级所有包。注意: 如果使用笔记本电脑,请确保使用交流电源。否则,计划的任务将不会运行,巧克力包也不会更新。

更新-2018年9月

除了 巧克力升级全部启动在启动时升级所有软件包(上面提到过) ,现在还有一个 Chocolatey 软件包 巧克力升级版,可以用来经常检查/升级所有软件包(例如,每天,每周)。.)按照你的要求,在适当的时候: -)

当然,使用公共存储库的一个缺点是,你依赖于其他人来维护这些包,这很大程度上是出于他们的好心,所以如果你使用这个来保持你自己的机器是最新的,你可能还是应该偶尔运行一下类似 SUMo 的东西来保持关注。我们强烈鼓励各组织托管和维护自己的存储库,而不是出于这个原因使用公共存储库。