聚合分页类接口查询结果

更新时间:

调用分页类接口时,默认情况下仅返回单页查询结果。使用--pager选项可聚合分页数据,实现全量数据的一次性获取。

字段说明

您可以在阿里云CLI中使用--pager选项对分页类接口的数组类结果进行聚合,该选项包含以下字段,使用时需要与接口返回结果中的字段相对应。

字段名

说明

PageNumber

列表当前页码。默认自动匹配接口返回的同名字段。

PageSize

每页最大结果数量。默认自动匹配接口返回的同名字段。

TotalCount

列表总行数。默认自动匹配接口返回的同名字段。

NextToken

查询凭证。默认自动匹配接口返回的同名字段。

path

手动指定数组类型数据的JMESPath路径,默认自动识别。

示例场景

说明

部分接口支持通过maxResult参数设置单次查询的最大结果数量。若设置值过小,可能导致请求频率及数据处理耗时显著增加。建议您在使用--pager选项时合理设置maxResult参数以优化查询效率。

  1. ECS产品的DescribeInstances接口是分页类接口。执行如下命令,默认情况下,该接口仅返回实例信息列表第一页的结果。

    aliyun ecs DescribeInstances
  2. 系统显示如下结果(部分截取)。

    {
        "PageNumber": 1,
        "TotalCount": 4,
        "PageSize": 10,
        "RequestId": "6EA82E70-9750-4A97-A738-E021D8A57F07",
        "Instances": {
            "Instance": [
                {    
                    "InstanceId": "i-m5edv0cqkr9hawls****"
                    "ImageId": "win2012r2_64_dtc_9600_zh-cn_40G_alibase_20190318.vhd",
                    "SerialNumber": "f06857e8-7f3c-443a-9f88-8e84eb51****",
                    "Cpu": 1,
                    "Memory": 2048,
                    "DeviceAvailable": true,
                    "SecurityGroupIds": {
                        "SecurityGroupId": [
                            "sg-bp1fgviwol82z8ap****"
                        ]
                    }
                }
            ]
        }
    }
  3. 执行以下命令,将获取所有分页中的实例ID信息。

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

    当字段参数值与默认值相同时,可以省略该字段,仅需指定 --pager 选项。

  4. 系统显示如下聚合结果(部分截取)。

    说明

    聚合后仅输出聚合字段。若需通过过滤功能查看特定字段,请注意过滤路径应为聚合后的JMESPath路径。更多信息,请参见过滤且表格化输出结果

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