如何使用aws cli仅获取dynamoDB中的主键值列表?

How to get only a list of primary key values in dynamoDB using aws cli?

我想从 DynamoDB 获取主键列表 'values',主键如下所示:

{
  "primary_key": "value1",
  "other_elements": "element1"
},
{
  "primary_key": "value2",
  "other_elements": "element2"
},
...
{
  "primary_key": "valueN",
  "other_elements": "elementN"
}

我想要得到的只是一个 "primary_key" 值的列表,就像这样:

value1
value2
...
valueN

我尝试了以下方法:

aws dynamodb scan --table-name "table_name" 
--select SPECIFIC_ATTRIBUTES 
--attributes-to-get "primary_key_name"

但它会打印所有 table 描述,而不仅仅是那些值。 如何使用 cli 仅提取这些值?

非常感谢您的建议。

看起来 --attributes-to-get 是一个遗留参数(如此处所述:https://docs.aws.amazon.com/cli/latest/reference/dynamodb/scan.html#options)。根据该文档,您想改用 --projection-expression

因此,您的命令将如下所示:

aws dynamodb scan --table-name "table_name" 
--select SPECIFIC_ATTRIBUTES 
--projection-expression "primary_key_name"

不过,输出不会按照您想要的方式进行格式化。我建议使用 grep and/or 可能 awk 只打印主键的值。以下问题的答案将对此有所帮助:Bash: grep pattern from command output.