AWS cli s3api put-bucket-tagging 无法识别我的 TagSet

AWS cli s3api put-bucket-tagging not recognizing my TagSet

我正在使用以下 aws cli 命令。看了好几遍都没弄明白这个命令有什么问题。

aws s3api put-bucket-tagging --bucket s3://****edited**** --tagging TagSet=[{Key=Name,Value=FHWA_Packaging_Logs},{Key=Project,Value=FHWA_Processing},{Key=Team,Value=Production}]

我收到以下错误:

Unknown options: TagSet=[Key=Name,Value=FHWA_Processing,Key=Team], TagSet=[Key=Name,Value=FHWA_Processing,Value=Production], TagSet=[Value=FHWA_Packaging_Logs,Key=Project,Key=Team], TagSet=[Value=FHWA_Packaging_Logs,Key=Project,Value=Production], TagSet=[Value=FHWA_Packaging_Logs,Value=FHWA_Processing,Key=Team], TagSet=[Value=FHWA_Packaging_Logs,Value=FHWA_Processing,Value=Production], TagSet=[Key=Name,Key=Project,Value=Production]

命令有什么问题?

Amazon 中的文档不正确,因此如果您复制他们的示例,您将无法 运行 命令。 CLI 命令有两处错误:

1) 桶名前不能有s3://

2) TagSet 周围应该有引号,即 "TagSet=[{Key=xxxxx,Value=ddddd}]"(这不在 AWS 文档中)。

我使用这个解决方案从 bash 脚本中标记了一个桶:

customer="customername"
awsbucket="bucketname"
tag="TagSet=[{Key=Customer,Value=$customer}]"
aws s3api put-bucket-tagging --bucket $awsbucket --tagging $tag

我必须将 TagSet 部分放在一个单独的变量中才能使标记起作用。