# 如何使用CLI
华为云命令行工具服务（Koo Command Line Interface，KooCLI，原名HCloud CLI）是为发布在[API Explorer](https://console.huaweicloud.com/apiexplorer/#/openapi/overview)上的云服务API提供的命令行管理工具。您可以通过此工具调用API Explorer中*IEC* 开放的API，管理和使用您的*IEC* 资源。关于KooCLI的详细信息，请参见[什么是KooCLI](https://support.huaweicloud.com/productdesc-hcli/hcli_01.html)。
#### 安装KooCLI
在使用KooCLI前，您需要先安装KooCLI。KooCLI支持Windows、Linux和macOS三种操作系统，请根据您机器所使用的操作系统，安装对应版本的工具。
- [在Windows系统上安装KooCLI](https://support.huaweicloud.com/qs-hcli/hcli_02_003_01.html)
- [在Linux系统上安装KooCLI](https://support.huaweicloud.com/qs-hcli/hcli_02_003_02.html)
- [在macOS系统上安装KooCLI](https://support.huaweicloud.com/qs-hcli/hcli_02_003_03.html)
- [在Docker中配置和使用KooCLI](https://support.huaweicloud.com/qs-hcli/hcli_02_003_05.html)
 
#### 配置KooCLI初始化
使用KooCLI调用API时，需要获取调用者的身份信息用于认证鉴权。通过配置KooCLI初始化，可以把永久AK/SK信息存储在配置文件中，避免在调用API时频繁输入这些固定信息。
**如果您不希望通过配置文件传入认证信息，而是直接在命令中传入认证相关参数，可跳过此步骤** ，具体操作可参见[无配置方式使用KooCLI](https://support.huaweicloud.com/usermanual-hcli/hcli_07_001.html)。
此处以Windows系统为例介绍如何配置KooCLI的初始化，Linux和macOS系统的操作类似。在配置初始化前，您需要提前获取AK/SK信息，具体操作请参见[新增访问密钥](https://support.huaweicloud.com/usermanual-ca/ca_05_0003.html#section1)。
1. 打开命令行窗口。
2. 执行以下命令进行初始化配置。
   ```
   hcloud configure init
   ```
   
3. 根据界面提示输入各参数值。
   ```
   Access Key ID [required]:      //必填，输入AK 
   Secret Access Key [required]:      //必填，输入SK，输入内容时系统会匿名化处理 
   Secret Access Key (again):      //必填，再次输入SK，输入内容时系统会匿名化处理 
   Region:      //选填，输入Region
   ```
   完成后，界面提示"初始化配置成功"。
   
 
#### 生成和执行CLI命令
KooCLI支持两种命令生成方式：
- 通过API Explorer快速生成并获取调用API的CLI命令。**推荐通过API Explorer获取CLI命令，更方便快捷。**
- 通过CLI命令查询API的操作命令和相关参数信息，然后手动拼接调用API的CLI命令，具体操作可参见[查看与执行云服务操作命令](https://support.huaweicloud.com/qs-hcli/hcli_02_005.html)。
此处以智能边缘云（IEC）的ListSites（查询边缘站点列表）API为例，介绍如何从API Explorer生成CLI命令，然后执行CLI命令调用API。
1. 在[API Explorer](https://console.huaweicloud.com/apiexplorer/#/openapi/IEC)的智能边缘云服务页面，选择"查询边缘站点列表"API。
2. 在中间的参数配置界面中，填写调用API所需的参数。
3. 在右侧界面选择"CLI示例"页签，可查看生成的CLI命令。 查询边缘站点列表（ListSites）API的CLI命令示例如下。
   ```
   hcloud IEC ListSites --cli-region="cn-north-4"
   ```
   
4. 复制生成的CLI命令，并粘贴到命令行窗口中执行。 查询边缘站点列表（ListSites）API的CLI命令执行结果示例如下。
   ```
   {
      "count": 1,
      "sites": [
        {
          "id": "705da43d-fa20-11ea-9fb2-fa1640495574",
          "name": "changsha",
          "city": "changsha",
          "i18n_city": "长沙市",
          "province": "hunan",
          "i18n_province": "湖南",
          "area": "central",
          "i18n_area": "华中地区",
          "country": "China",
          "i18n_country": "China",
          "status": "Normal",
          "city_short_name": "CS",
          "pools": [
            {
              "id": "705ed516-fa20-11ea-9fb2-fa1640495574",
              "site_id": "705da43d-fa20-11ea-9fb2-fa1640495574",
              "display_name": "",
              "operator": {
                "id": "1",
                "name": "chinatelecom",
                "i18n_name": "中国电信",
                "sa": "CTCC"
              },
              "pool_id": "5_sbgp_site1",
              "ip_version": "4"
            },
            {
              "id": "705ed56a-fa20-11ea-9fb2-fa1640495574",
              "site_id": "705da43d-fa20-11ea-9fb2-fa1640495574",
              "display_name": "",
              "operator": {
                "id": "2",
                "name": "chinaunicom",
                "i18n_name": "中国联通",
                "sa": "CUCC"
              },
              "pool_id": "5_unicon_site1",
              "ip_version": "4"
            },
            {
              "id": "fcd8beaa-fd71-11ea-9594-00d861bad499",
              "site_id": "705da43d-fa20-11ea-9fb2-fa1640495574",
              "display_name": "iec-changsha-pool2",
              "operator": {
                "id": "3",
                "name": "chinamobile",
                "i18n_name": "中国移动",
                "sa": "CMCC"
              },
              "pool_id": "5_mobile_site1",
              "ip_version": "4"
            }
          ]
        }
      ]
    }
   ```
   
 
