分页类接口结果聚合
更新时间:
使用阿里云CLI调用各云产品的分页类接口时,默认情况下仅返回第一页的结果。当需要获取所有的结果时,您可以使用阿里云CLI的聚合结果功能。
--pager选项字段说明
您可以通过使用--pager
选项,对分页类接口的数组类结果进行聚合。该选项包含以下四个字段:
字段名 | 描述 |
PageNumber | 字段值对应API返回结果中描述列表当前页码的字段,默认值: |
PageSize | 字段值对应API返回结果中描述每页返回的最大结果数量的字段,默认值: |
TotalCount | 字段值对应API返回结果中描述列表总行数的字段,默认值: |
path | 由于API返回结果的多样性,您可以手动指定需要聚合的数组类型所在的JMESPath路径。 说明
|
示例场景
ECS产品的
DescribeInstances
接口是分页类接口。执行如下命令,默认情况下,该接口仅返回实例信息列表第一页的结果。aliyun ecs DescribeInstances
系统显示类似如下输出(部分截取)。
{ "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" ] } } ] } }
示例命令
执行如下命令,将会返回全部分页中的实例信息列表。
aliyun ecs DescribeInstances --pager PageNumber=PageNumber PageSize=PageSize TotalCount=TotalCount path=Instances.Instance
由于该接口返回的值都与子字段的默认值一致,使用
--pager
命令时可省略所有子字段。简化格式如下:aliyun ecs DescribeInstances --pager
系统显示如下聚合结果(部分截取)。
说明聚合之后的输出,只包含有聚合的字段。若您使用过滤功能获取您需要了解的字段,此时过滤字段的路径为聚合之后的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" ] } } ] } }
文档内容是否对您有帮助?