【问题标题】:AWS CLI : Issue with "delete-item" requestAWS CLI:“删除项目”请求问题
【发布时间】:2021-03-07 16:35:45
【问题描述】:

我在通过 AWS CLI 获取特定的删除项目请求时遇到问题。

这是我想要做的:

  1. 对我的 DynamoDB 表执行扫描操作,以返回与不是分区键的字段上的过滤器表达式匹配的所有结果
  2. 对于与此查询匹配的所有项目,将其从表中删除

这是我要运行的命令..

aws dynamodb scan \
--filter-expression "EnvironmentGroup = :EnvironmentGroup" \   
--expression-attribute-values '{":EnvironmentGroup":{"S":"deleteThisGroup"}}' \   
--table-name "MyTable"
--query "Items[*]" \   
# use jq to get each item on its own line   
| jq --compact-output '.[]' \   
# replace newlines with null terminated so    
# we can tell xargs to ignore special characters    
| tr '\n' '\0' \   
| xargs -0 -t -I keyItem \
# use the whole item as the key to delete (dynamo keys *are* dynamo items)
aws dynamodb delete-item --table-name "MyTable" --key=keyItem

所以在上面的示例中,我想对MyTable 表执行扫描并返回所有将EnvironmentGroup 字段设置为deleteThisGroup 的项目。然后,我希望从表中删除这些项目中的每一个。

这对我不起作用。如果我取出 delete-item 行,该命令将起作用并返回所有项目的列表,但如果我重新添加 delete-item,我会得到 Error parsing parameter '--key': Expected: '=', received: 'EOF' for input: keyItem

我在这里做错了什么?

【问题讨论】:

    标签: amazon-web-services nosql amazon-dynamodb aws-cli dynamodb-queries


    【解决方案1】:

    delete-item 是删除一项 如果要删除多个项目,请使用batch-write-item

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-04-03
      • 2021-06-28
      • 1970-01-01
      • 1970-01-01
      • 2020-06-01
      • 2023-04-09
      相关资源
      最近更新 更多