本文原始地址:https://sitoi.cn/posts/46278.html

介绍

Chocolatey 是一种软件管理解决方案,与您在 Windows 上经历过的任何其他事情都不一样。它着重于简单性,安全性和可伸缩性。您可以在 PowerShell 中为任何软件(不仅仅是安装程序)编写一次软件部署,然后可以使用任何可以管理系统(配置管理,端点管理等)并跟踪和管理该软件更新的解决方案,将其部署到 Windows 所在的任何位置。随着时间的推移。使用 Chocolatey 在本地,“云”中或 Docker 容器中管理软件。

简而言之呢:就是类似 Liunx 下的 apt、yum、dnf 等程序包管理器。

另外需要说明的是,Chocolatey 只是把官方下载路径封装到了 Chocolatey 中,所以下载源都是其官方路径,所以下载的一定是合法的,但是如果原软件是需要 Licence 注册的话,那么 Chocolatey 下载安装好的软件还是需要你去购买注册。不过 Chocolatey 一般还是会选用免费 Licence 可用的软件。

安装要求

  • Windows 7+ / Windows Server 2003+
  • PowerShell v2+
  • .NET Framework 4+ (the installation will attempt to install .NET 4.0 if you do not have it installed)

安装 Chocolatey

以管理员的方式打开 PowerShell

  • 右击 左下角 Windows 图标,选择 Windows PowerShell(管理员)(A)

输入安装命令安装 Chocolatey

  • 在 PowerShell 终端输入以下安装代码,后输入回车即可:
Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))

  • 等待安装完成(如果长时间没有反映,请尝试开启 科 学 上 网

检测是否安装成功

  • 在 PowerShell 终端输入 chocochoco -? 检测是否安装成功

安装成功了就开始使用吧!

Choco 安装软件

以安装 nodejs 为例

查找软件包

一、利用 choco 命令查找软件包

在终端输入 choco 搜索命令:

choco search nodejs

二、利用网页端查找软件包

安装软件包

在 PowerShell 终端输入安装命令

choco install nodejs

安装命令会先下载软件包,然后再执行安装脚本,下载完成后,会询问你是否希望运行安装脚本?,输入 Y 即可。

检测 nodejs 是否安装成功,在终端输入 node -v

当你想要安装 python,只需要:

choco install python

想安装 git,只需要:

choco install git

想安装 java,只需要:

choco install java

Choco 常用命令使用

Chocolatey 的使用也很简单,使用指令如下:

choco search <keyword>  # 搜索软件
choco list <keyword> # 跟 search 命令功能类似
choco install <package1 package2 ...> # 安装软件
choco install <package> -version *** # 安装指定版本
choco uninstall name # 卸载软件
choco version <package> # 查看安装包的版本情况
choco upgrade <package> # 更新某个软件
choco list -localonly # 查看一下所有安装在本地的包的列表
choco list -lo # 功能同上

包的类型

Chocolatey 的包有不同的类型,有些包的名字里面会包含特殊的后缀,比如 .install ,.commandline,.portable ,有些包的名字不带这些后缀。

  • 无后缀(例:nodejs,git)

  • .install (例:nodejs.install,git.install)

    .install 后缀的包,这个包会出现在系统控制面板里的 卸载或更改程序 里面,你可以把 .install 的包想成是通过安装程序(msi)安装的包。

  • .commandline(例:nodejs.commandline,未来会被抛弃)

    .commandline(未来会被抛弃) 与 .portable 后缀的包是压缩包(zip),安装这种后缀的包,你不能在 卸载或更改程序 里找到它们。

  • .portable (例:putty.portable)

你也可以选择不带后缀的包,这样如果系统中已经安装了这个包,就会跳过去,如果没安装,Chocolatey 就会为你安装一个,默认安装的这个包的类型应该就是 .install 后缀的包。

软件包的推荐顺序: 无后缀 > .install > .portable > .commandline

附录

Windows 程序包管理器 Chocolatey:一条命令装软件的更多相关文章

  1. 善用 NuGet 程序包管理器控制台

    每种集成开发环境都会提供扩展包的下载与安装,VS (微软可视化集成开发环境) 下的叫程序包管理控制台,我们把他叫做<牛干 程序包管理控制台>. 在 工具=>NuGet 程序包管理器= ...

  2. VS2013中Nuget程序包管理器控制台使用入门(三)-项目实战(原创)

    VS2013中Nuget程序包管理器控制台使用入门(三)-项目实战 1.给指定项目安装Newtonsoft.Json ,Version 4.5.11 PM> Install-Package Ne ...

  3. VS2013中Nuget程序包管理器控制台使用入门(二)-如何使用Nuget提供的帮助(原创)

    如何使用Nuget提供的帮助? 1.从get-help Nuget开始,键入“get-help NuGet”以查看所有可用的 NuGet 命令. 用法: PM> get-help Nuget 主 ...

  4. VS2013中Nuget程序包管理器控制台使用入门(一)-准备环境(原创)

    准备环境: 1.打开VS2013IDE集成开发环境. 2.新建一个Asp.net Mvc的项目,比如命名为:MvcApplication1 3.打开 菜单"工具"->&quo ...

  5. VS2010使用NuGet程序包管理器

    使用C#过程中经常需要使用一些扩展包,例如sqlite,json解析等. VS2010自带了一个扩展管理器,里面可以下载到AStyle,Visual Assit等有用的插件. VS2010中点击[工具 ...

  6. 解决“程序包管理器控制台”输入命令找不到Nuget包问题

    问题: 问题原因: Nuget源的地址上不去 解决办法: 1.将Nuget源更新为可以国内使用的官方Nuget源. 1)打开VS2013:工具-->Nuget程序包管理器-->程序包管理器 ...

  7. Windows上包管理器之Chocolatey初体验

    一直使用Windows开发项目,前段时间使用了一段时间的macOS,感觉使用homebrew和npm去安装一些常用的包真的是方便啊,最近又使用回Windows,由于电脑比较新,发现里面连Git都没有, ...

  8. Kubernetes学习之路(二十五)之Helm程序包管理器

    目录 1.Helm的概念和架构 2.部署Helm (1)下载helm (2)部署Tiller 3.helm的使用 4.chart 目录结构 5.chart模板 6.定制安装MySQL chart (1 ...

  9. kubernetes-helm程序包管理器(二十)

    helm概述 Helm是Kubernetes的包管理器,Helm 让我们能够像 yum 管理 rpm 包那样安装.部署.升级和删除容器化应用. Helm的核心术语: Chart:一个helm程序包,是 ...

随机推荐

  1. webpack原理

    webpack早就已经在前端领域大放异彩,会使用和优化webpack也已经是中.高级工程师必备技能,在此基础之上再对webpack的原理进行理解和掌握,必定会在未来的开发中事半功倍.若是对于webpa ...

  2. Shell之StdI/O和Pipe

    目录 Shell之StdI/O和Pipe 参考 StdI/O重定向 Pipe 常用组合 Shell之StdI/O和Pipe

  3. 多线程基础(主要内容转载于https://segmentfault.com/a/1190000014428190)

    进程作为资源分配的基本单位 线程作为资源调度的基本单位,是程序的执行单元,执行路径(单线程:一条执行路径,多线程:多条执行路径).是程序使用CPU的最基本单位. 线程有3个基本状态: 执行.就绪.阻塞 ...

  4. bat脚本自动安装Jmeter&Jdk

    一句话能解决的事情,绝对不要写一篇文章:一篇文章能解决的事情,绝对不要使用各种工具:一个工具能解决的事情,绝对不要跑东跑西…… 文章主要介绍脚本如何下载.安装.配置Jmeter&Jdk. 不多 ...

  5. TinyXML2的快速实践

    最近遇到个需要在C++中处理XML文件的需求,虽然对此方面并不是很熟,但好在有GitHub上的awesome-cpp项目的帮助,还是收获了足够的相关知识. 类库 常用的或被推荐的XML类库有以下数个选 ...

  6. Tomcat线程参数maxThreads、acceptCount

    一.配置Tomcat/conf/server.xml修改配置 <Connector port="8080" protocol="org.apache.coyote. ...

  7. 02-22 决策树C4.5算法

    目录 决策树C4.5算法 一.决策树C4.5算法学习目标 二.决策树C4.5算法详解 2.1 连续特征值离散化 2.2 信息增益比 2.3 剪枝 2.4 特征值加权 三.决策树C4.5算法流程 3.1 ...

  8. Cheapest Palindrome POJ - 3280

    Keeping track of all the cows can be a tricky task so Farmer John has installed a system to automate ...

  9. 【Python3爬虫】我爬取了七万条弹幕,看看RNG和SKT打得怎么样

    一.写在前面 直播行业已经火热几年了,几个大平台也有了各自独特的“弹幕文化”,不过现在很多平台直播比赛时的弹幕都基本没法看的,主要是因为网络上的喷子还是挺多的,尤其是在观看比赛的时候,很多弹幕不是喷选 ...

  10. Java序列化总结(最全)

    概念 实现 Serializable 接口, 它只是一个标记接口,不实现也能够进行序列化 RMI: 远程方法调用 RPC: 远程过程调用 序列化ID 解决了序列化与反序列出现代码不一致的问题, 不一致 ...