在阿里云API中,某些API返回的结果会随时间的推移而变化。您可以通过结果轮询,直到某个值出现特定状态时停止轮询,并返回数据。
--waiter选项字段说明
您可以通过使用--waiter选项进行结果轮询。该选项包含以下两个子字段:
字段名 | 描述 |
---|---|
expr | 表示通过jmespath查询语句指定的JSON结果中的被轮询字段。 |
to | 表示被轮询字段的目标值。 |
示例
- 示例场景
执行创建ECS实例的命令后,调用DescribeInstances接口查询一台或多台实例的详细信息。由于实例创建需要时间,将不断的查询实例的运行状态,直到处于Running状态,DescribeInstances接口成功返回数据。
- 示例命令
执行如下命令,命令行程序以一定时间间隔进行实例状态轮询,当实例处于Running状态时,停止轮询,并返回数据。
aliyun ecs DescribeInstances --InstanceIds '["i-12345678912345678123"]' --waiter expr='Instances.Instance[0].Status' to=Running