aws s3 sync / aws s3 cp下载的json文件不完整

问题描述 投票:0回答:1

我从amazon s3下载了.json文件,但其内容只是第一个键/值对的值。

原始json文件是这样的:

{
    "_1": [
        {
            "Name": "name",
            "Type": "type"
        }
    ]
}

但是下载的json文件甚至不是json文件,它里面只有列表。

[
  {
    "Name": "name",
    "Type": "type"
  }
]

我尝试过aws s3同步/ aws s3复制/ aws s3api get-object,其所有结果都是相同的。

我只想从s3存储桶下载原始文件。

有什么解决方法吗?

  • 更新

我只是将原始内容复制到了s3 select的预览中,并将其保存为文件。

我发现它的md5校验和和文件大小与对象概述完全不同。

似乎s3存储桶上的原始文件已损坏,但是我不确定其预览仍与原始内容相同。

json amazon-s3 aws-cli
1个回答
0
投票

[我发现aws s3api select-object-content可以给我与从预览中选择S3相同的结果,但没有缩进。

对于缩进,我决定在收到未损坏的结果后重新缩进。

我使用以下命令检索我的json文件。

aws s3api select-object-content \
  --bucket $BUCKET \
  --key $KEY --expression "select * from s3object" \
  --expression-type 'SQL' \
  --input-serialization '{"JSON": {"Type": "LINES"}, "CompressionType": "NONE"}' \
  --output-serialization '{"JSON": {}}' \
  /dev/stdout | python -mjson.tool > $KEY
© www.soinside.com 2019 - 2024. All rights reserved.