# 华为云CLI 使用

## 配置信息管理

### 配置命令简介

CLI配置命令包含初始化配置、配置项的增删改查等，具体命令如下表：

| **系统命令**                | **功能简介**     |
| --------------------------- | ---------------- |
| hcloud configure **init**   | 初始化配置       |
| hcloud configure **set**    | 新增/修改配置项  |
| hcloud configure **list**   | 查询配置项列表   |
| hcloud configure **show**   | 查询指定配置项   |
| hcloud configure **delete** | 删除指定配置项   |
| hcloud configure **test**   | 检查配置文件格式 |
| hcloud configure **clear**  | 删除所有配置项   |

### 初始化配置

CLI初始化命令用于将常用的**永久AK/SK**和**区域**信息储存在配置文件中，避免操作时频繁输入这些固定信息。可通过如下命令初始化配置：

`hcloud configure iit`

输入以上命令后，界面会逐步提示你输入AK、SK和常用的Region。

| 参数名                                                       | 说明                                                         |
| ------------------------------------------------------------ | ------------------------------------------------------------ |
| cli-profile                                                  | 配置项名称。如果修改配置项时不指定此参数，则修改[默认配置项](https://support.huaweicloud.com/productdesc-hcli/hcli_01_002.html)。执行“hcloud configure show”命令可查看默认配置项的内容。 |
| cli-mode                                                     | 认证模式。取值范围：AKSK：分为访问密钥和临时安全凭证。访问密钥即为永久AK/SK，临时安全凭证即为临时AK，SK和SecurityToken。token：访问令牌，具有时效性，过期后需重新配置。ecsAgency：当委托给ECS服务器时，在ECS服务器中使用CLI调用云服务API时自动获取临时认证信息。agency：账号间委托关系建立后，被委托方通过委托方式认证，可代为管理委托方的云服务和资源。 |
| [cli-region](https://support.huaweicloud.com/usermanual-hcli/hcli_09_003.html) | 区域。                                                       |
| [cli-access-key](https://support.huaweicloud.com/usermanual-hcli/hcli_09_001.html) | 访问密钥ID（Access Key ID，简称AK），此参数必须和SK同步修改。 |
| [cli-secret-key](https://support.huaweicloud.com/usermanual-hcli/hcli_09_001.html) | 秘密访问密钥（Secret Access Key，简称SK），此参数必须和AK同步修改。 |
| [cli-x-auth-token](https://support.huaweicloud.com/usermanual-hcli/hcli_09_004.html) | 系统颁发给IAM用户的访问令牌。注意过期后需重新配置，否则调用云服务API时无法完成认证。 |
| [cli-security-token](https://support.huaweicloud.com/usermanual-hcli/hcli_09_005.html) | 临时安全凭证。在使用临时AK/SK认证身份时，需同时使用此参数。注意过期后需重新配置，否则调用云服务API时无法完成认证。 |
| cli-lang                                                     | 华为云CLI的语言。取值范围：cn（中文）en（英文）              |
| [cli-project-id](https://support.huaweicloud.com/usermanual-hcli/hcli_09_002.html) | 项目ID。                                                     |
| [cli-domain-id](https://support.huaweicloud.com/usermanual-hcli/hcli_09_002.html) | IAM用户所属账号ID，以AK/SK模式调用全局服务的API时需要。      |
| cli-custom                                                   | 是否操作custom参数。取值范围：true（表示要操作配置项中的custom参数）false（默认值，表示要操作配置项中的CLI系统参数） |
| cli-read-timeout                                             | I/O超时时间(秒)。默认取值为10秒，参数最小取值为1秒。         |
| cli-connect-timeout                                          | 请求连接超时时间(秒)。默认取值为5秒，参数最小取值为1秒。     |
| cli-retry-count                                              | 请求连接重试次数。默认取值为0次，可配置的取值范围为0~5次。   |
| cli-skip-secure-verify                                       | 是否跳过https请求证书验证(**不建议**)。取值范围：true（表示要跳过https请求证书验证，出于安全考虑**不建议**）false（默认值，表示不跳过https请求证书验证） |
| cli-agency-domain-name                                       | 委托方的账号名称，必须和cli-agency-name同时使用              |
| cli-agency-domain-id                                         | 委托方的账号ID，必须和cli-agency-name同时使用                |
| cli-agency-name                                              | 委托名称，必须和cli-agency-domain-id或cli-agency-domain-name同时使用 |
| cli-source-profile                                           | 保存被委托方认证信息的配置项。配置项的cli-source-profile取值不能是当前配置项。当前仅支持cli-mode为token的配置项作为cli-source-profile。 |

>说明：
>
>- 参数“--cli-custom”的取值可标识向配置项中设置的参数类型：当“--cli-custom=false”时，设置其中的CLI系统参数；当“--cli-custom=true”时，设置其中的custom（即用户自定义）参数。
>- 设置配置项中的CLI系统参数时，若该配置项不存在则新增配置项，否则修改该配置项。
>- 不支持向不存在的配置项中设置custom参数；不支持在同一命令中同时设置CLI系统参数和custom参数。
>- 向配置项中设置系统参数或custom参数，都会使该配置项成为[默认配置项](https://support.huaweicloud.com/productdesc-hcli/hcli_01_002.html)。

新增或修改配置项的命令为：

`hcloud configure set --param1=paramValue1 --param2=paramValue2 ...`

## 查看帮助信息

华为云CLI支持在命令中添加“--help”参数查看帮助信息，例如：

- `hcloud --help`

  查看华为云CLI的使用方法及支持的云服务列表。

- `hcloud <service> --help`

  查看指定云服务的operation列表。例如查看“CDN”服务的operation列表：hcloud CDN --help

- h`cloud <service> <operation> --help`

  查看指定云服务API的详情信息。

例如查看“CDN”服务中，operation为“ShowQuota”的API详情：`hcloud CDN ShowQuota --help`