全部產品
Search
文件中心

Alibaba Cloud CLI:分頁類介面結果彙總

更新時間:Jun 30, 2024

使用阿里雲CLI調用各雲產品的分頁類介面時,預設情況下僅返回第一頁的結果。當需要擷取所有的結果時,您可以使用阿里雲CLI的彙總結果功能。

--pager選項欄位說明

您可以通過使用--pager選項,對分頁類介面的數組類結果進行彙總。該選項包含以下四個欄位:

欄位名

描述

PageNumber

欄位值對應API返回結果中描述列表當前頁碼的欄位,預設值:PageNumber

PageSize

欄位值對應API返回結果中描述每頁返回的最大結果數量的欄位,預設值:PageSize

TotalCount

欄位值對應API返回結果中描述列表總行數的欄位,預設值:TotalCount

path

由於API返回結果的多樣性,您可以手動指定需要彙總的數群組類型所在的JMESPath路徑。

說明

--pager選項預設可以自動識別結果中的數群組類型資料。

樣本情境

  1. ECS產品的DescribeInstances介面是分頁類介面。執行如下命令,預設情況下,該介面僅返回執行個體資訊列表第一頁的結果。

    aliyun ecs DescribeInstances
  2. 系統顯示類似如下輸出(部分截取)。

    {
        "PageNumber": 1,
        "TotalCount": 4,
        "PageSize": 10,
        "RequestId": "6EA82E70-9750-4A97-A738-E021D8A57F07",
        "Instances": {
            "Instance": [
                {
                    "ImageId": "win2012r2_64_dtc_9600_zh-cn_40G_alibase_20190318.vhd",
                    "SerialNumber": "f06857e8-7f3c-443a-9f88-8e84eb5163c7",
                    "Cpu": 1,
                    "Memory": 2048,
                    "DeviceAvailable": true,
                    "SecurityGroupIds": {
                        "SecurityGroupId": [
                            "sg-bp1fgviwol82z8ap348n"
                        ]
                    }
                }
            ]
        }
    }

樣本命令

  1. 執行如下命令,將會返回全部分頁中的執行個體資訊列表。

    aliyun ecs DescribeInstances --pager PageNumber=PageNumber PageSize=PageSize TotalCount=TotalCount path=Instances.Instance

    由於該介面返回的值都與子欄位的預設值一致,使用--pager命令時可省略所有子欄位。簡化格式如下:

    aliyun ecs DescribeInstances --pager
  2. 系統顯示如下彙總結果(部分截取)。

    說明

    彙總之後的輸出,只包含有彙總的欄位。若您使用過濾功能擷取您需要瞭解的欄位,此時過濾欄位的路徑為彙總之後的JMESPath路徑。更多資訊,請參見過濾且表格化輸出結果

    {
        "Instances": {
            "Instance": [
                {
                    "ImageId": "win2012r2_64_dtc_9600_zh-cn_40G_alibase_20190318.vhd",
                    "SerialNumber": "f06857e8-7f3c-443a-9f88-8e84eb5163c7",
                    "Cpu": 1,
                    "Memory": 2048,
                    "DeviceAvailable": true,
                    "SecurityGroupIds": {
                        "SecurityGroupId": [
                            "sg-bp1fgviwol82z8ap348n"
                        ]
                    }
                }
            ]
        }
    }