Chocolatey包管理器安装使用

📖 Chocolatey 初始化配置使用说明

1. 简介

此文档指导如何使用 Setup-Chocolatey.ps1 脚本来完成 Chocolatey 的安装和初始化配置。Chocolatey 是 Windows 上最流行的包管理器之一,功能与 Homebrew 类似,支持通过命令行安装、更新和卸载软件包。

  • 特点

    • 支持从官方源或第三方源安装软件。
    • 自动处理依赖关系。
    • 可用于自动化脚本和企业部署。
  • 常用命令

    powershell 复制代码
    深色版本
    choco install <package-name>      # 安装软件
    choco upgrade <package-name>      # 更新软件
    choco uninstall <package-name>    # 卸载软件
    choco search <keyword>            # 搜索软件包

2. 准备工作

所需工具:

  • Windows PowerShell
  • 文本编辑器(如记事本或 VS Code)

注意事项:

  • 确保以管理员身份运行 PowerShell,否则部分操作可能失败。
  • 网络连接正常,因为需要从互联网下载 Chocolatey 安装包。

3. 步骤一:保存脚本文件

操作步骤:

  1. 打开文本编辑器(如记事本)。
  2. 粘贴以下内容到编辑器中:
powershell 复制代码
# =============================
# Chocolatey 安装与初始化配置脚本
# =============================

# 绕过执行策略限制(确保脚本能运行)
Set-ExecutionPolicy Bypass -Scope CurrentUser -Force

# 设置目标安装路径
$chocoInstallPath = "D:\Chocolatey"

# 启用 TLS 1.2(确保能正常访问 HTTPS 资源)
[Net.ServicePointManager]::SecurityProtocol = [Net.ServicePointManager]::SecurityProtocol -bor 3072

# Step 1: 下载并运行 Chocolatey 官方安装脚本
Write-Host "⚙️ 正在下载并运行 Chocolatey 官方安装脚本..." -ForegroundColor Cyan
Set-ExecutionPolicy Bypass -Scope CurrentUser -Force
Invoke-Expression ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))

# Step 2: 移动 Chocolatey 到自定义目录(原默认路径为 C:\ProgramData\chocolatey)
if (Test-Path "C:\ProgramData\chocolatey") {
    Write-Host "🚚 正在将 Chocolatey 移动到 $chocoInstallPath ..." -ForegroundColor Cyan
    Move-Item -Path "C:\ProgramData\chocolatey" -Destination $chocoInstallPath -Force
}

# Step 3: 设置 ChocolateyInstall 环境变量
Write-Host "⚙️ 设置 ChocolateyInstall 环境变量..." -ForegroundColor Cyan
[Environment]::SetEnvironmentVariable("ChocolateyInstall", $chocoInstallPath, "Machine")
$env:ChocolateyInstall = $chocoInstallPath

# Step 4: 配置 Chocolatey 使用国内镜像源(清华大学)
Write-Host "⚙️ 正在配置 Chocolatey 使用国内镜像源(清华大学)..." -ForegroundColor Cyan
choco source add -n=china -s="https://mirrors.tuna.tsinghua.edu.cn/Chocolatey"
choco config set -name="'sourcePriority'` -value="'china'"

# Step 5: 将 choco.exe 所在目录添加到系统 PATH
Write-Host "⚙️ 配置系统 PATH 环境变量..." -ForegroundColor Cyan
$systemPath = [Environment]::GetEnvironmentVariable("Path", "Machine")
if ($systemPath -notlike "*$chocoInstallPath\bin*") {
    $newSystemPath = "$systemPath;$chocoInstallPath\bin"
    [Environment]::SetEnvironmentVariable("Path", $newSystemPath, "Machine")
    Write-Host "✅ 已将 Chocolatey 添加到系统 PATH。" -ForegroundColor Green
} else {
    Write-Host "ℹ️ Chocolatey 已存在于系统 PATH 中。" -ForegroundColor Yellow
}

# Step 6: 创建或更新 PowerShell 用户配置文件以启用 Tab 补全
Write-Host "⚙️ 配置 PowerShell Tab 补全支持..." -ForegroundColor Cyan
$profileDir = "$env:USERPROFILE\Documents\WindowsPowerShell"
$profileFile = "$profileDir\Microsoft.PowerShell_profile.ps1"

if (-not (Test-Path $profileDir)) {
    New-Item -ItemType Directory -Path $profileDir -Force | Out-Null
}

if (-not (Test-Path $profileFile)) {
    New-Item -ItemType File -Path $profileFile -Force | Out-Null
    Add-Content -Path $profileFile -Value "Import-Module `$env:ChocolateyInstall\helpers\chocolateyProfile.psm1"
    Write-Host "✅ 已创建 PowerShell 配置文件并启用 Tab 补全。" -ForegroundColor Green
} else {
    if ((Get-Content $profileFile) -notcontains "Import-Module `$env:ChocolateyInstall\helpers\chocolateyProfile.psm1") {
        Add-Content -Path $profileFile -Value "Import-Module `$env:ChocolateyInstall\helpers\chocolateyProfile.psm1"
        Write-Host "✅ 已更新 PowerShell 配置文件并启用 Tab 补全。" -ForegroundColor Green
    } else {
        Write-Host "ℹ️ PowerShell 配置文件已包含 Chocolatey 补全模块。" -ForegroundColor Yellow
    }
}

# Step 7: 启用 Chocolatey 常用功能
Write-Host "⚙️ 正在启用 Chocolatey 支持的功能..." -ForegroundColor Cyan
choco feature enable -n=allowGlobalConfirmation

# 提示用户重启 PowerShell
Write-Host "`n✅ 所有设置已完成。请关闭并重新打开 PowerShell 窗口使更改生效。" -ForegroundColor Green
Write-Host '💡 你现在可以使用 choco 命令安装软件包,例如:' -ForegroundColor Cyan
Write-Host '   choco install git -y' -ForegroundColor Yellow
  1. 保存文件Setup-Chocolatey.ps1(注意后缀是 .ps1)。
  2. 注意:在记事本中,"UTF-8"实际上就是 UTF-8 with BOM,适合 PowerShell 使用。

4. 步骤二:以管理员身份运行 PowerShell

操作步骤:

  1. 右键点击 开始菜单中的 Windows 终端PowerShell 图标。
  2. 选择"以管理员身份运行"

5. 步骤三:运行初始化配置脚本

操作步骤:

  1. 管理员权限的 PowerShell 窗口中,导航到保存 Setup-Chocolatey.ps1 文件的目录。例如,如果你将脚本保存在 D:\Scripts 目录下:

    powershell 复制代码
    cd D:\Scripts
  2. 运行脚本:

    powershell 复制代码
    .\Setup-Chocolatey.ps1

脚本执行结果:

  • 成功后会提示你所有设置已完成,并建议你重新启动 PowerShell 窗口。

6. 步骤四:验证安装与配置

操作步骤:

  1. 关闭并重新打开 PowerShell(确保新窗口是以管理员身份运行)。

  2. 验证 Chocolatey 版本

    powershell 复制代码
    choco -v

    输出应类似于 2.4.3

  3. 验证 Chocolatey 安装路径

    powershell 复制代码
    echo $env:ChocolateyInstall

    输出应为 D:\Chocolatey

  4. 检查 PATH 是否包含 D:\Chocolatey\bin

    powershell 复制代码
    $env:Path -split ';' | Select-String 'D:\\Chocolatey\\bin'

    如果输出包含 D:\Chocolatey\bin,则表示路径设置成功。


7. 常见问题解答

Q1: 运行脚本时出现错误:"无法加载文件...未签名"

  • 解决方法 :你需要允许脚本执行。在 PowerShell 中输入以下命令:

    powershell 复制代码
    Set-ExecutionPolicy RemoteSigned -Scope CurrentUser

Q2: 运行 choco 命令报错

  • 原因:可能是 PATH 环境变量未正确设置。
  • 解决方法 :手动检查并添加 D:\Chocolatey\bin 到系统 PATH。

Q3: PowerShell 无法识别 choco 命令

  • 原因:可能是因为终端没有刷新环境变量。

  • 解决方法 :关闭并重新打开 PowerShell 窗口,或者手动刷新 PATH:

    powershell 复制代码
    $env:Path = [System.Environment]::GetEnvironmentVariable("Path","Machine") + ";" + [System.Environment]::GetEnvironmentVariable("Path","User")

希望这份文档能帮助你顺利完成 Chocolatey 的安装和配置。如果有任何问题,请随时提问! 😊

相关推荐
Tony11542 小时前
win11系统部署tomcat10教程
windows·tomcat
zsffuture3 小时前
LangGraph--带记忆和工具的聊天机器人
windows·python·机器人
Wukong.Sun5 小时前
操作系统的概念,功能和目标
java·linux·开发语言·windows
明京8 小时前
常见文件系统格式有哪些
windows
TeleostNaCl8 小时前
一种使用 PowerToys 的键盘管理器工具重新映射按键实现在 Windows 上快捷输入字符的方式
windows·经验分享
春马与夏8 小时前
Windows桌面图标修复
windows
怀旧,18 小时前
【数据结构】5. 双向链表
数据结构·windows·链表
拄杖忙学轻声码18 小时前
windows电脑解决笔记本搜索不到wifi问题
windows·电脑
waterHBO18 小时前
Cursor 编辑器, 使用技巧,简单记录一下
windows·编辑器
笑鸿的学习笔记19 小时前
Windows笔记之Win11让非焦点窗口程序也能获得流畅性能的方法
windows·笔记