# CCD 命令行界面 (CLI)

> Use the command-line interface to manage Cloud Content Delivery buckets, entries, and release pipelines efficiently.

与 Cloud Content Delivery (CCD) 进行交互的推荐方法是使用命令行界面 (CLI)。在此工具中，您可以使用命令行来全面控制您的项目，包括从文件管理到组织发布管线等各个方面。

许多类似的功能都可以在 [Dashboard（后台）](./dashboard.md)中实现，但仍需要使用 CLI 将文件复制到存储桶，或同步整个文件夹。

## 开始使用##installation

要设置 CCD 来使用 CLI，请执行以下操作：

1. 如果您已有项目，请转到下一步。否则，如果您是第一次使用 Unity 服务：

   1. 创建一个 [Unity ID](https://id.unity.com/) 帐户（如果您还没有此帐户）。
   2. 登录 [Unity Dashboard（Unity 后台）](https://dashboard.unity3d.com/)。
   3. 单击 Projects（项目）下拉选单，然后单击 **Create project（创建项目）**。在 Create project（创建项目）窗口中，填写所需的详细信息。

2. 在 Dashboard（后台）的主菜单中，单击 **Explore Services（探索服务）**（如果尚未选择）。

3. 在主窗口的 All Solutions（所有解决方案）或 LiveOps 选项卡下，单击 **Cloud Content Delivery**。

4. 单击左侧的 **Download CLI（下载 CLI）**。

5. 要下载 CLI，请找到操作系统的版本，然后选择下载图标。

6. 在左侧导航栏，转到 **API Key（API 密钥）** 部分。

7. 复制 API 密钥。

8. 在用于上传内容的计算机上运行 CLI。

9. 通过 `auth` 命令使用 API 密钥登录 CLI。

CCD 现已准备好供您使用。

## CLI 用法##migration-information

CCD 命令在 CLI 中的基本形式如下：

`$ ucd [command]`

> **Tip:**
>
> 请务必在命令的末尾输入 `-h` 或 `--help` 来显示该命令可能可用的其他参数和标志。

要查看当前使用的 CLI 版本，请添加 `--version` 标志：

`$ ucd --version`

您可以在任何命令后添加以下全局标志：

* `--apikey string`：用户指定的用于访问 Content Delivery 的 API 密钥。
* `-h`、`--help`：显示给定命令的其他参数和标志。
* `-q`、`--quiet`：禁止显示由指定命令执行的操作。
* `-v`、`--verbose`：显示错误信息。

> **Note:**
>
> 对于高于 0.11.0 的 CLI 版本，您需要为大多数命令添加 `--environment` 标志。请参阅 [CLI 示例](#get-started)和[通过 CLI 使用 CCD](./cli-walkthrough.md)。

可用的命令包括：

### auth##unified-with-ugs-tooling

向 CCD 进行身份验证。

用法：`ucd auth [command]`

可用的命令：

* `info`： 显示当前用户信息。
* `login [apikey]`：登录以访问项目数据和内容分发服务。
* `logout`： 注销当前帐户。

### badges##authentication-updates

管理发布版本的标示。

用法：`ucd badges [command]`

可用的命令：

* `add [badge_name] [release_id]`： 为发布版本添加标示。
* `list`：列出当前存储桶中的标示。
* `remove [badge_name]`： 移除标示。

### buckets##enhanced-user-experience

管理项目的存储桶。

用法：`ucd buckets [command]`

可用的命令：

* `create [project_guid] [bucket name]`： 为项目创建存储桶。
* `delete [bucket_id]`：删除存储桶。
* `info [bucket_id]`： 获取存储桶信息。
* `list [project_guid]`： 列出项目的存储桶。

### config##prerequisites

管理用于设置和标识当前存储桶的选项。

用法：`ucd config [command]`

可用的命令：

* `clear`：清除所有本地配置选项。
* `set environment [environment_id] --project=[project_id]`：设置当前环境。
* `set bucket [bucket_id] [flags]`： 将指定的存储桶设置为当前（激活）的存储桶。
* `show`：显示当前本地配置。

### entries##set-up-ccd-for-cli

管理当前存储桶的条目。

用法：`ucd entries [command]`

可用的命令：

* `copy [local_path] [entry file name]`：从本地文件创建当前存储桶的条目。
* `delete [entry file name]`：从当前存储桶中删除条目。
* `download [entry file name]`：从当前存储桶下载条目内容。
* `info [entry file name]`：从当前存储桶获取条目信息。
* `list`：列出当前存储桶的条目。
* `sync [local_dir_path]`：从本地目录同步当前存储桶的条目。
* `update [entry file name]`：更新当前存储桶的条目。

> **Tip:**
>
> 要取消 entries sync 命令，请在过程中按 Ctrl+C。在取消之前同步的所有条目都将保持已上传状态，因此您必须将其从存储桶中删除。

### releases##authentication

管理当前存储桶的发布版本。

用法：`ucd releases [command]`

可用的命令：

* `create`：从当前存储桶的最新版本创建发布版本。
* `info [release_id]`：获取特定发布版本的发布版本信息。
* `list`：列出当前存储桶的发布版本。
* `promote [release_id] --target_bucket [bucket_id]`：将指定的发布版本推进到另一个存储桶。使用可选的 `-n`、`--notes` 标志可以添加注释字符串。
* `update [release_id]`：更新现有的发布版本。使用可选的 `-n`、`--notes` 标志可以添加注释字符串。

存储桶和条目名称区分大小写。

> **Note:**
>
> `bucket_name` 是您在创建存储桶时直接分配给存储桶的标签。所有其他命令都需要 `bucket_ID`，您可以使用 `buckets list` 命令或在 [Dashboard（后台）](./dashboard.md#buckets)中找到此信息。

## CLI 示例##get-started

* 创建存储桶：\
  `$ ucd buckets create [project_id] [bucket_name]`
* 删除存储桶：\
  `$ ucd buckets delete [bucket_id]`
* 列出项目的所有存储桶，包括存储桶的 `bucket_id`：\
  `$ ucd buckets list [project_id]`
* 将当前的存储桶设置为激活的存储桶：\
  `$ ucd config set bucket [bucket_id]`
* 将本地文件夹与当前存储桶同步：\
  `$ ucd entries sync [local_dir_path]`
* 查看当前存储桶中所有条目的列表：\
  `$ ucd entries list`

> **Note:**
>
> 对于高于 0.11.0 的 CLI 版本，您需要为大多数命令添加 `--environment` 标志。
>
> 示例：
>
> `ucd buckets list --environment=[environment_id] [PROJECT_ID]`
>
> 还可以使用 `config` environment 命令保存要在将来的所有命令中使用的环境：
>
> `ucd config set environment [environment_id] --project=[project_id]`
>
> 如果在 `config` 中设置环境，则无需添加 `--environment` 标志。

如需查看如何使用命令行界面的连续示例，请参阅[通过 CLI 使用 CCD](./cli-walkthrough.md)。
