Installing Chocolatey

本文详细介绍了如何在Windows系统上使用Chocolatey包管理工具,包括安装过程、常见问题解决、基本命令操作以及如何搜索、安装、升级和删除软件包。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

转自https://www.cnblogs.com/7day/p/9496454.html

Installing Chocolatey

使用包管理工具(Package Manager)去管理这些软件,这里说的是操作系统级别的包管理工具,也就是管理想要安装到操作系统上的软件的工具。这是相对于项目级别的包管理,比如前端项目用的 Bower ,还有管理 NodeJS 包的 npm 而言的。

包管理工具,可以让我们用几个简单的命令去安装,升级,还有删除软件,并且它会自动给我们解决软件之间的依赖的问题。这改变了你传统Windows安装软件模式。

Windows 用户可以使用 Chocolatey 这个包管理工具,Mac 用户可以使用 Homebrew 。

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

安装 Chocolatey
安装 Chocolatey,只需要在 Windows 系统的命令行工具下面去执行一行命令,这个命令行工具可以是 命令提示符(cmd),也可以是 Powershell ,只需要在其中的一个上面安装 Chocolatey 就可以了。你要用管理员的身份去运行命令行工具,不然会遇到权限问题。

以管理员身份打开命令行工具

Windows 7:点击 开始 菜单,在搜索框里输入 cmd 或者 powershell ,找到以后,用鼠标右键点击它们,选择 以管理员身份运行。

Windows 8 + :使用快捷键 win + Q ,搜索 cmd 或者 powershell ,然后右键点击它们,在窗口下面,选择 以管理员身份运行。

在 Cmd.exe 上安装 Chocolatey

@powershell -NoProfile -ExecutionPolicy Bypass -Command “iex ((new-object net.webclient).DownloadString(‘https://chocolatey.org/install.ps1’))” && SET PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin

PowerShell.exe (Ensure Get-ExecutionPolicy is at least RemoteSigned)

iex ((new-object net.webclient).DownloadString(‘https://chocolatey.org/install.ps1’))

PowerShell v3+ (Ensure Get-ExecutionPolicy is at least RemoteSigned)

iwr https://chocolatey.org/install.ps1 -UseBasicParsing | iex

遇到的问题及解决方法
其实你在实际操作中会面临失败,比如,没有以管理员身份打开,版本选择不对,更惨的是你的电脑禁止了脚本的运行

所以需要在 Powershell 装 Chocolatey 之前,先修改一下 Powershell 的执行策略,上图中的提示安装失败,解决的方法是执行下面的命令,意思就是把执行的策略设置成不限制:

set-ExecutionPolicy RemoteSigned

提示
执行策略更改
执行策略可以防止您执行不信任的脚本。更改执行策略可能会使您面临 about_Execution_Policies

帮助主题中所述的安全风险。是否要更改执行策略?
[Y] 是(Y) [N] 否(N) [S] 挂起(S) [?] 帮助 (默认值为“Y”):
y
以下文章对你的安装都有帮助,如果遇到失败,认真学习。
1、微软官方文档对组策略的详细介绍 https://technet.microsoft.com/zh-CN/library/hh847748.aspx
2、官方安装文档教程:https://chocolatey.org/install#before-you-install
3、英雄小强:http://www.cnblogs.com/Hero-Qiang/archive/2011/09/09/2172005.html

Chocolatey测试

在命令行工具的下面,输入:

choco help
如果出现一些有用的帮助信息,比如 Chocolatey 的版本号,安装到的目录,相关的命令,还有示例等等,这就说明我们已经可以在系统上使用 Chocolatey 了。

直接输入choco -? 则返回Chocolatey 的版本号

choco -?

Chocolatey用法

用 Chocolatey 做的事都是通过在命令行工具里面输入命令去做的,查看这些命令可以在使用 choco help 这个命令,Chocolatey 的命令都是用 choco 开头,后面接着是更具体的子命令,比如 install 就是去安装点什么,update 是去升级指定的包,uninstall 是把包从电脑上删除掉。

choco help //查看choco使用说明
choco search //搜索想要安装的包,用 -all 参数会显示所有可用的版本
choco install //安装包,用 -version 参数可以安装指定版本的包
choco uninstall //删除包
choco update //更新安装的包
搜索

在 Chocolatey 的官方网站上(https://chocolatey.org/packages),可以查看所有可以使用 Chocolatey 安装的东西,或者也可以在命令行工具的下面去搜索想要安装的东西:
我们直接命令行输入choco search则返回所有的支持的在线的安装包,我测试了一下目前有3974 packages founds

choco search
choco search keyword
跟 search 命令功能类似的还有 list 命令:

choco list keyword
比如搜索一下 nodeJS 相关的包,可以这样:

choco search nodeJS
上面的命令会在返回所以跟 nodeJS 相关的包,想要查看这些包所有的可用的版本,可以在命令的后面加上一个 -all 参数:

choco search nodeJS -all
包的类型

  • (例:nodejs,git)
    *.install (例:nodejs.install,git.install)
    *.commandline(例:nodejs.commandline,未来会被抛弃)
    *.portable(例:putty.portable)
    Chocolatey 的包有不同的类型,有些包的名字里面会包含特殊的后缀,比如 .install ,.commandline,.portable ,有些包的名字不带这些后缀。

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

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

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

安装

安装包,用的是 choco install 命令,把想要安装的包的名字放到 install 的后面,想一次去安装多个包,可以在 install 命令后面添加一个包的名字的列表,不同的包之间用空格分隔开。

choco install package1 package2 package3…

比如我们想去安装一个 cURL 工具,安装之前可以先用 search 命令搜索一下,搜索的时候加上 -all 参数,会显示出包的所有可用的版本,在安装的时候,你可以在 -version 参数的后面,指定一个具体要安装的版本,不使用 -version 参数,直接安装会安装包的最新发布的版本。

choco search curl -all

会返回一个列表:

复制代码

curl 7.21.7
curl 7.22.0
curl 7.23.1
curl 7.25.0
curl 7.28.1

复制代码
下面我们故意去安装一个旧版本的 curl , 一会儿再去升级一下它。比如我要安装的是 7.22.0 版本的 curl :

choco install curl -version 7.22.0
Chocolatey 不仅可以给我们安装指定版本的包,它还能解决包的依赖问题,也就是,如果你安装的这个包需要其它的包提供的功能,Chocolatey 会自动给你安装这个依赖的包。

安装以后,可以用 choco list 命令,加上一个 -localonly 或 -lo(简写形式) 参数,查看在本地安装的包的列表。

choco list -localonly

升级

升级安装在本地电脑上的包,用的是 choco upgrade 命令,后面加上要升级的包的名字:

choco upgrade package
在升级包之前,可以先先去查看一下有没有可用的升级。如果你想查看 Chocolatey 本身有没有可用的升级,执行命令:

choco versionv
在 choco version 命令的后面,输入具体的包的名字,可以查看指定的这个包有没有可用的新版本。比如查看一下前面我们安装的 cURL 这个小东西的升级:

choco version curl
返回的结果看起来是这样的:

name : curl
found : 7.22.0

latest : 7.28.1

name 对应的是包的名字,found 后面是安装在本地电脑上的版本,latest 后面是最新的可用的版本。这里 cURL 这个包的最新版本是 7.28.1 ,比我们安装的版本要新,所以可以去升级一下它。

choco upgrade curl
cURL 是一个命令行工具,所以在命令行工具的下面,查看这个小工具的版本可以这样:

curl -version
上面命令会返回当前安装在电脑上的 cURL 的版本,你会发现,它已经被 Chocolatey 升级成最新的版本了。

删除

想要删除掉用 Chocolatey 安装的包,用的是 choco uninstall ,后面加上要卸载或者删除掉的包的名字。

choco uninstall package
在删除包之前,可以查看一下所有安装在本地的包的列表:

choco list -localonly
比如我们要删除掉之前安装的 cURL 这个包:

choco uninstall curl
成功以后,再查看一下安装在本地的包的列表,已经看不到 cURL 了。

Commands
There are quite a few commands you can call - you should check out the command reference. Here are the most common:

Help - choco -? or choco command -?
Search - choco search something
List - choco list -lo
Config - choco config list
Install - choco install baretail
Pin - choco pin windirstat
Outdated - choco outdated
Upgrade - choco upgrade baretail
Uninstall - choco uninstall baretail
To upgrade Chocolatey, run the following command from the command line or from PowerShell:

PS C:\WINDOWS\system32> Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1')) Forcing web requests to allow TLS v1.2 (Required for requests to Chocolatey.org) Getting latest version of the Chocolatey package for download. Not using proxy. Getting Chocolatey from https://community.chocolatey.org/api/v2/package/chocolatey/2.0.0. Downloading https://community.chocolatey.org/api/v2/package/chocolatey/2.0.0 to C:\Users\27748\AppData\Local\Temp\chocolatey\chocoInstall\chocolatey.zip Not using proxy. Extracting C:\Users\27748\AppData\Local\Temp\chocolatey\chocoInstall\chocolatey.zip to C:\Users\27748\AppData\Local\Temp\chocolatey\chocoInstall Installing Chocolatey on the local machine Creating ChocolateyInstall as an environment variable (targeting 'Machine') Setting ChocolateyInstall to 'C:\ProgramData\chocolatey' WARNING: It's very likely you will need to close and reopen your shell before you can use choco. Restricting write permissions to Administrators We are setting up the Chocolatey package repository. The packages themselves go to 'C:\ProgramData\chocolatey\lib' (i.e. C:\ProgramData\chocolatey\lib\yourPackageName). A shim file for the command line goes to 'C:\ProgramData\chocolatey\bin' and points to an executable in 'C:\ProgramData\chocolatey\lib\yourPackageName'. Creating Chocolatey folders if they do not already exist. chocolatey.nupkg file not installed in lib. Attempting to locate it from bootstrapper. PATH environment variable does not have C:\ProgramData\chocolatey\bin in it. Adding... 警告: Not setting tab completion: Profile file does not exist at 'C:\Users\27748\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1'. Chocolatey (choco.exe) is now ready. You can call choco from anywhere, command line or powershell by typing choco. Run choco /? for a list of functions. You may need to shut down and restart powershell and/or consoles first prior to using choco. Ensuring Chocolatey commands are on the path Ensuring chocolatey.nupkg is in the lib folder PS C:\WINDOWS\system32>
06-12
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值