如何在未经确认的情况下更新所有Chocolatey应用程序?

Jos*_*osa 53 chocolatey

我曾经能够调用cup all并更新我的应用程序.现在,它要求yes确保我要安装所选的包.有没有一种方法可以让所有内容自动更新,而无需不断yes为每次更新打字?

Jon*_*ell 97

正如Rob指出的那样,-y会跳过给定命令的提示.

如果您根本不打算使用确认提示,则可以全局设置该选项.

以下启用allowGlobalConfirmation,它将在没有确认提示的情况下安装或更新.

choco feature enable -n=allowGlobalConfirmation
Run Code Online (Sandbox Code Playgroud)

如果您想要重新打开提示,请使用disable运行相同的命令:

choco feature disable -n=allowGlobalConfirmation
Run Code Online (Sandbox Code Playgroud)

这对于无人参与的脚本非常有用,而不会影响提示的未来状态.

注意:语法最近已更改(2016年7月),现在需要使用等号allowGlobalConfirmation而不是破折号.谢谢你的提醒,@ dragon788.

  • 谢谢乔恩,可能应该在我的回答中更突出这一点。 (2认同)
  • 我认为在这两个答案之间,人们将既学习钓鱼又吃鱼。顺便说一句@ferventcoder,非常感谢您的巧克力味-我是个超级粉丝。 (2认同)

fer*_*der 47

tl; dr - 是的,完全有可能.使用cup all -y

另请查看帮助菜单 - choco -h,choco install -h

更长的答案,出于安全原因,我们已经向其他软件包管理器靠拢了一些,默认情况下我们会停止并确认您是否对状态更改感到满意.我总是在发布说明/更改日志中传达更改,这些更改最终也会出现在nuspec文件中,因此我强烈建议人们扫描其中至少一个以查看标记为重大更改的内容.始终从当前版本扫描到要升级到的版本,以便捕获所有更改.

现在最重要的一个是x.y.z发布(在这种情况下是0.9.9),一旦我们达到v1,我们将完全符合SemVer,并且突破性变化将构成一个主要的版本颠簸(我们仍然是一个小于v1),因此您可以扫描版本中的重大更改和主要新功能,x版本中的新兼容功能.y,以及.z版本仅包含当前版本的兼容修补程序.

0.9.9引入了一个新的编译客户端,这是一个完全重写的.0.9.10将具有与旧客户端完全相同的功能 - 请参阅FeatureParity.为什么重写?对于现在可以在单声道上运行的更易维护,更快的客户端,因此您并不完全依赖于Windows.我们已经开始添加对其他安装提供程序(如Scriptcs)的支持.

您的问题的发行说明相关部分:

  • [安全]提示确认:出于安全原因,我们现在停止确认,然后在大多数命令上更改系统状态.您可以传递-y确认任何提示或在配置中设置一个值,该值将全局确认并且表现得像旧版本的Chocolatey(allowGlobalConfirmation请参阅choco feature -h如何启用).