【发布时间】:2020-11-03 09:27:38
【问题描述】:
我正在尝试使用带有查询的 AWS CLI 运行命令。该命令可能很简单,例如aws s3api list-buckets --query 'sum(Versions[*].Size)'
但是,有时,某些值可能会返回 null。在上面的例子中,size 可以在没有内容的情况下为 null,并且该命令将返回以下错误:
In function sum(), invalid type for value: None, expected one of: ['array-number'], received: "null"
我怎样才能给它一个默认值?如果实际值为 null,我想将其设置为 0,以便结果中有一些值而不是错误。
【问题讨论】:
-
你可以试试
sum(Versions[*].Size || 0) -
@Marcin 我试过了,但它返回一个错误,
invalid token: Parse error at column 20, token "0" (NUMBER) -
这个版本
'sum(Versions[*].Size || [`0`])'?注意 0 左右的反引号。 -
没问题。如果您不介意,我提供了一个答案以供将来参考。
-
@Marcin 绝对!
标签: amazon-web-services command-line-interface aws-cli jmespath